1

我正在尝试使用此问题中给出的代码向页面添加无限滚动功能,检查用户是否滚动到底部,但是当我滚动到页面底部时没有任何反应。这是代码,因此您不必点击链接:

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

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

4

2 回答 2

1

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

$(window).on('scroll', function () { 
  if ($(window).height() + $(window).scrollTop() >= $(document).height() - 100) {
    alert('do stuff');  
  }
});
于 2012-06-25T19:10:07.363 回答
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中打开它并右键单击->元素检查器,打开控制台选项卡,它将告诉您每个循环的值是什么,应该可以帮助您诊断问题。如果您没有得到任何痕迹,则事件不会触发

于 2012-06-25T19:59:30.810 回答