滚动事件导致自定义事件触发两次(应该是一次)

时间:2016-07-27 11:06:57

标签: javascript jquery infinite-scroll twitter-flight

以下函数附加了滚动事件,然后触发第5行定义的自定义事件。

第5行似乎导致函数调用两次(如果删除了第4行,第5行打印了两次)。

自定义事件应该只触发一次,此时它只有两次。

 this.on(window, 'scroll', function(event){
    var win = $(window);
    if ($(document).height() - win.height() === win.scrollTop()) {
        console.log('testing 123');
         this.trigger('uiHandlRequest', { type: 'foo' });
        return false; 
        }            
   });

1 个答案:

答案 0 :(得分:0)

在触发自定义事件时使用'window'而不是'this'。

this.on(window, 'scroll', function(event){
    var win = $(window);
    if ($(document).height() - win.height() === win.scrollTop()) {
        console.log('testing 123');
         window.trigger('uiHandlRequest', { type: 'foo' });
        return false; 
        }            
   });