2015-06-03 96 views
1

我不能解决这个问题,控制台给出这个错误:Uncaught TypeError: $ is not a function。这是它指向的代码:

<script type="text/javascript"> 
$(document).ready(function() { 
    $(".linky").click(function(){ 
     var t = $(this); //<-ERROR POINTS HERE 
     var y = $("#0"+t.attr("id")).offset().top; 
     $('html,body').animate({scrollTop: y},500); 
    }); 
}); 
</script> 

任何帮助将不胜感激!

+5

你是否包含jQuery库?如果答案是肯定的,它是否正确加载(检查控制台)?这段代码放在jQuery加载行之后吗? –

+2

每当你得到这个错误,只要检查你是否包含jQuery库或不。其次,这可能是由于冲突在同一页上有多个jQuery库.. –

+0

确保您没有包含JQUERY FILE –

回答

0

您需要包括jQuery脚本

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
+0

它已包含 – FFlaser

+1

尝试添加此,

+0

检查网络选项卡,以确保jquery实际上正在加载,你应该看到一个为jquery检索的文件。 –

4

也许jQuery.noConflict();它正在某处使用你的网站内。试试这个:

<script type="text/javascript"> 
(function($) { 
    $(document).ready(function() { 
    $(".linky").click(function(){ 
     var t = $(this); //<-ERROR POINTS HERE 
     var y = $("#0"+t.attr("id")).offset().top; 
     $('html,body').animate({scrollTop: y},500); 
    }); 
    }); 
})(jQuery); 
</script> 
相关问题