jQuery force / trick .scroll()来冒泡

时间:2012-06-26 22:24:22

标签: javascript jquery ajax scroll

是否可以强制或欺骗.scroll()事件冒泡,以便我可以抓住用户在加载了ajax的内容中使用<div>滚动overflow: auto;?我正在通过$.ajax加载一些HTML,并且在滚动时需要一些方法来检测。根据W3C滚动不应该冒泡,这就是为什么我认为jQuery不会这样做。但是我能够抓住$(window).on('scroll', function() { console.log('scrolling'); });

$(window).load(function() {
    $.ajax({
        url: "/data.html",
        dataType: "html",
        success: function(data) {
            $("#container").html(data);
        }        
    });
});

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

$('#container')是设置已加载的$.ajax数据的容器,而$('#content')来自$.ajax请求中加载的HTML

1 个答案:

答案 0 :(得分:1)

答案是通过jQuery添加一个包装元素,然后你可以附加一个滚动事件。

$("#container").wrap('<div id="wrapper"></div>');

$("#wrapper").on('scroll', function() {
    // do stuff
});