多次调用onScroll事件

时间:2011-07-20 20:36:01

标签: javascript jquery html

我想在用户滚动网页时加载更多内容。我尝试使用

  1. onScroll事件javascript被多次调用

  2. jQuery .scroll()方法,也称为多次。

  3. 我该如何处理?这是一个浏览器问题吗?

    注意:我在HTML的正文标记上调用onScroll = "function()"

3 个答案:

答案 0 :(得分:1)

每个滚动上,将调用任何滚动方法

因此,您应该检查用户何时滚动到底部,然后加载更多内容。

答案 1 :(得分:0)

答案 2 :(得分:0)

如果您在窗口移动时收到一系列事件(类似于调整大小事件时发生的事件),那么一个技巧是在第一个滚动事件上设置一个1-2秒的计时器,但不做任何事情然而。如果在计时器触发之前有后续滚动事件,则停止上一个计时器并设置一个新计时器。当用户停止滚动一小段时间时,计时器将会触发,然后您可以处理滚动事件。如果他们滚动更多,整个过程将重复。

jQuery伪代码示例:

var scrollTimer = null;
$("#target").scroll(function(){
    if (scrollTimer) {
        clearTimeout(scrollTimer);  // clear previous timer
    }
    // set timer while we wait for a pause in scroll events
    scrollTimer = setTimeout(function() {
        scrollTimer = null;  // timer done here
        // do your dynamic loading here
    }, 1000);
});