Jquery检测包含元素的滚动

时间:2014-08-02 16:43:37

标签: php jquery

我有一个文件结构,其中index.php头包含我的JS文件和JQ。索引文件中的内容加载了一个php include标记来加载wall.php,因为它太过动态了。

在wall.php中,我有一个带有id'包装器的div,我想检测该div中的滚动事件,但它似乎没有触发。

这是我的JQ

$(document).on('scroll', '#wrapper', function() {
    alert('test');
});

(我有det文件准备功能 - 其他JQ工作)

有人知道为什么吗?

2 个答案:

答案 0 :(得分:0)

scroll事件未冒泡,无法委托给文档。

添加PHP包含的内容在页面加载后添加的意义上并不是真正的动态,因此您不需要委托,只需执行

$('#wrapper').on('scroll', , function() {
    alert('test');
});

答案 1 :(得分:0)

除非将css属性溢出设置为滚动,否则它不会检测滚动,并且div容器实际上是可滚动的。我在JSFiddle上做了一个小实现。

CSS

#wrapper{
  height: 200px;
  overflow: scroll;
}

的jQuery

$('#wrapper').on('scroll', function(){
   alert("Scroll Detected");
});

只有当div变小时,它才会变为可滚动,然后可以检测到滚动。

JSFiddle