无法使用jQuery委托滚动事件
我正在尝试使用jQuery在特定类元素的滚动上触发事件,如下所示:
$('body').on('scroll', '.overflow', function() { do stuff; });
然而, do stuff
永远不会发生。 我做了一些实验,看起来好像无法使用.on
委托滚动事件。 (有关测试用例,请参阅http://jsbin.com/aJeDiru/2 )。
有没有办法让我委托? 或者是否有一个非常好的理由™为什么永远不应该以这种方式设置委托?
根据W3 , scroll
事件不会冒泡。
由于事件委托依赖于事件冒泡到您已将处理程序附加到的元素,因此您将无法使用委派。
改用“鼠标滚轮”,
确保#contents位于主html文件中。
$("#contents").on('mousewheel',function(e) { if(e.originalEvent.wheelDelta /120 > 0) { //do something to the loaded elements } else { //do something to the loaded elements } });