Window.scroll在augular控制器中不起作用

时间:2015-11-09 00:12:59

标签: jquery angularjs window scrolltop

如果用户已滚动到底部,我尝试提醒消息。我正在使用angularJS,它似乎没有工作。

app.controller('MainController',function($scope, $rootScope, $route, $http, $timeout){

  // overflow auto 
  $(document).ready(function() {
      $(window).scroll(function() {
        if($(window).scrollTop() + $(window).height() == $(document).height()) {
           alert("bottom!");
        }
      });
  });
});

有帮助吗?

1 个答案:

答案 0 :(得分:1)

你到了那里。正如Dvir指出的那样,如果您将所有DOM交互保留在指令中,那么测试控制器会更容易。所以,你可以这样做:

angular.module("myApp", [])
    .directive('myDirective', function() {
        return {
            link: function(scope, element, attrs){
                $(window).scroll(function() {   
                   if($(window).scrollTop() + $(window).height() == $(document).height()) {
                       alert("bottom!");
                   }
                });
            }
        };
    });

这是一个工作小提琴:https://jsfiddle.net/rdvjjav2/1/