是否可以在Angularjs的div滚动中触发事件?

时间:2015-07-20 07:12:33

标签: javascript angularjs events scroll angularjs-directive

如何在Angularjs中触发div滚动事件(不是$ document和$ window)?

angular.element('div.myClassname').bind("scroll", function() {

});

2 个答案:

答案 0 :(得分:2)

只要div.myClassname具有overflow: scroll;且其内容大于其大小,您就知道您所写的内容会有效。虽然您必须使用document.querySelector进行查询。见fiddle虽然我必须同意Pankaj Parkar的意见,但更有利于制定指令。

答案 1 :(得分:2)

是的,你可以做,但应该通过指令来实现。 Directive将为您提供对该DOM元素的控制,class哪个适用于<div class="myClassname"> ..Content here to scroll.. </div>

<强>标记

app.directive('myClassname', function(){
  return {
    restrict: 'C',
    link: function(scope,element, attrs){
       element.bind('scroll', function(){
         //do code here
       })
    }
  }
})

<强>指令

sort(apply(cbind(w, x, y, z), 2,function(v) sum((a - v) ^ 2)))[1]