无限滚动javascript没有运行

时间:2012-06-25 19:06:47

标签: javascript jquery infinite-scroll

我正在尝试使用此问题Check if a user has scrolled to the bottom中给出的代码向页面添加无限滚动功能,但当我滚动到页面底部时没有任何反应。以下是代码,因此您无需关注链接:

<script type="text/javascript"> 
alert("popup!");    
$(window).scroll(function() {   
   if($(window).scrollTop() + $(window).height() > $(document).height() - 100) {
       alert("bottom!");
   }
});  
</script>

我在第一个警报中添加了检查是否只是我的浏览器阻止警报,但它显示正常。服务器也安装了JQuery 1.7.2分钟并且页面是正确的,所以我不认为这是一个安装问题。

2 个答案:

答案 0 :(得分:1)

也许滚动事件使用你在那里的语法正确触发,试试这个:

$(window).on('scroll', function () { 
  if ($(window).height() + $(window).scrollTop() >= $(document).height() - 100) {
    alert('do stuff');  
  }
});

答案 1 :(得分:1)

在您回复我的评论后,您说您正在

In the console tab I'm getting Uncaught ReferenceError: $ is not defined

我猜是,你没有在页面的标题中包含jQuery(这需要在每页的<head>中)

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script> 

这将告诉您JQuery是否已成功加载到您的页面上

if (typeof jQuery != 'undefined') {
    alert("jQuery library is loaded!");
}else{
    alert("jQuery library is not found!");
}

原始评论:

尝试将console.log($(window).height()+"<-current sctoll | target->"+($(document).height() - 100))放入该循环中,在Chrome中打开并右键单击 - &gt;元素检查器,打开控制台选项卡,它将告诉您每个循环的值,应该可以帮助您诊断问题。如果您没有得到任何痕迹,则事件不会触发