无限滚动适用于Chrome,在Firefox中断

时间:2015-07-23 18:45:39

标签: angularjs google-chrome firefox angularjs-directive infinite-scroll

我有一个指令放在详细信息页面中,并显示一个服务器端数据表,一次一个新批处理。现在它在Chrome中按预期工作 - 只要用户滚动到页面底部,就会调用loadResults()函数,并且它会加载更多。但是,我在Firefox中没有这种行为,我认为它与$ window和$ document的哪些部分有关,但我不知道哪个。提前感谢任何帮助。

以下是相关的指令代码:

function drContainerContentsDirective($window, $document) {
  return {
    restrict: 'A',
    link: function(scope) {
      angular.element($window).bind('scroll', function() {
        var windowBottom = $document[0].body.scrollTop + $window.innerHeight;
        if(windowBottom >= $document[0].body.scrollHeight) {
          scope.$apply(scope.loadResults);
        } 
      });
    },
    controller: drContainerContentsController,
    templateUrl: 'js/directive/drContainerContent/drContainerContents.tpl.html',
    scope: {
      contentParentType: '@type'
    }
  };
}

1 个答案:

答案 0 :(得分:0)

我想出来了,至少在下一件事情发生之前 - 我使用foo<T>代替$window.pageYOffset并且在两个浏览器中都有效(尚未尝试IE)。< / p>

修改

也适用于IE