【发布时间】:2019-01-25 08:19:22
【问题描述】:
我正在尝试使用 angular (1.3.14) 指令来处理这样的元素上的滚动事件
var app = angular.module('myApp', []);
app.directive("scroll", function ($window) {
return {
restrict: 'A',
link: function(scope, element, attrs) {
console.log(element.className); // return 'undefined'
element.on('scroll', function(e) {
console.log('scroll'); //not working
});
element.on('click', function(e) {
console.log('click'); //working
});
}
}
});
我的问题是滚动事件不会触发。像点击这样的所有其他事件都可以正常工作,但不能滚动。此外,当我尝试获取元素类时,我得到“未定义”并且我的元素具有类。这是html:
<body ng-app="myApp" ng-controller="myCtrl" ng-keydown="keyListener($event)">
<section class="dark content second" scroll="">
</section>
</body>
我不知道这里有什么问题。
【问题讨论】:
-
滚动事件不会冒泡,它们只会在带有滚动条的特定元素上触发(如果它显示滚动条)。见MDN Event Reference - scroll
标签: javascript angularjs scroll angularjs-directive