我有一个文件结构,其中index.php头包含我的JS文件和JQ。索引文件中的内容加载了一个php include标记来加载wall.php,因为它太过动态了。
在wall.php中,我有一个带有id'包装器的div,我想检测该div中的滚动事件,但它似乎没有触发。
这是我的JQ
$(document).on('scroll', '#wrapper', function() {
alert('test');
});
(我有det文件准备功能 - 其他JQ工作)
有人知道为什么吗?
答案 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变小时,它才会变为可滚动,然后可以检测到滚动。