在身体上滚动监听器

我想问一下滚动监听器。 我想在主体上添加滚动侦听器,但它似乎不起作用。

$('body').scroll(function(){ console.log('SCROLL BODY'); }); 

我在小提琴上创建基本的例子,有人能解释我为什么不工作? 对不起nubies问题…

试试:

 $(window).scroll(function(){ console.log('SCROLL BODY'); }); 

这应该得到所有浏览器的支持。

因为正文不滚动, window就是。

在此示例中 ,您将看到绑定到父container的事件侦听container正在触发,因为该元素实际上是滚动的元素。

HTML看起来像这样:

 

some text

CSS看起来像这样:

 #container { height: 200px; overflow-y: scroll; } #content { height: 1000px; } 

相关的JS看起来像这样:

 $('#container').on('scroll', function() { console.log('#container'); }); $('#content').on('scroll', function() { console.log('#content'); }); 

上面的所有答案都希望jQuery成为使用的框架。 框架无关/普通JS实现可能如下所示

ES 5:

 // ES 5 : document.getElementsByTagName('body')[0].onscroll = function() { console.log("scrolling"); };