2013-03-28 3 views
1

Я получил этот скрипт:

<script> 
    $(document).ready(function() { 
     $('a[@href^= ""] img').parent().click(function() { 
      var linkz = $(this).attr("href"); 
      if(linkz.toLowerCase().indexOf("http: //www.website.com") >= 0) { 
       window.open($(this).attr("href")); 
       return false; 
      } else { 
       window.open("http://www.website.com/p/img.html?img=" + $(this).attr("href ")); 
       return false; 
      } 
     }); 
    }); 
</script> 

Чтобы открыть все изображения на новой странице, проходящей через URL изображения в новой ссылке. но я получаю

TypeError: $ is not a function.

Я пытался добавить JQuery (документ) вместо $ (документ), но затем я получил

$(&#39;a[@href^=&quot;&quot;] img&#39;) TypeError: $ is not a function

здесь.

+5

«$ не является функцией», как правило, верный признак того, что вы забыли включить библиотеку Jquery –

+0

Как включить JQuery в страница? –

ответ

0

Похоже, что вы не включаете jQuery правильно, так как браузер не знает, что такое $. Убедитесь, что Вы что-то подобное в <head> включить JQuery:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
1

Либо вы не включили JQuery, иначе вы запускали noConflict() и она выпустила контроль над $.

http://api.jquery.com/jQuery.noConflict/

Если вы использовали noConflict, вам просто нужно использовать JQuery() во всем, в том числе JQuery ('а [@ HREF = ""] IMG').

0

вы гавань добавил JQuery добавить это в <head></head>

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 

при тестировании на местном уровне, и у вас есть Llow полосу пропускания, и затем загрузить скрипт один раз ** http://code.jquery.com/jquery-1.9.1.min.js ** в папку и
<script src="jquery-1.9.1.min.js"></script>

0

Попробуйте это;

<script language="JavaScript" type="text/javascript" src="jquery/jquery.js"></script> 
<script> 
    jQuery.noConflict(); 
    (function ($) { 
     function readyFn() { 
      // Set your code here!! 
     } 

     $(document).ready(readyFn); 
    })(jQuery); 

</script> 

Или в вашем случае:

<script language="JavaScript" type="text/javascript" src="jquery/jquery.js"></script> 
<script> 
    jQuery.noConflict(); 
    (function ($) { 
     function readyFn() { 
      $('a[@href^= ""] img').parent().click(function() { 
      var linkz = $(this).attr("href"); 
      if(linkz.toLowerCase().indexOf("http: //www.website.com") >= 0) { 
       window.open($(this).attr("href")); 
       return false; 
      } else { 
       window.open("http://www.website.com/p/img.html?img=" + $(this).attr("href")); 
       return false; 
      } 
     }); 
     } 

     $(document).ready(readyFn); 
    })(jQuery); 

</script> 
Смежные вопросы