AngularJS:如何从指令添加的元素中删除事件处理程序
AngularJS: How to remove event handlers from an element that were added by a directive?
我有一个属性指令,它通过element.addEventListener(<event>, handler);
为link()函数中的元素上的某些事件添加事件侦听器
最后,我希望根据控制器中的逻辑动态地删除那些处理程序。我该怎么做?我考虑过只对控制器中的元素调用removeEventListener,但我没有引用处理程序函数,因为它在我的指令中。
您最终可以使用删除事件处理程序。
scope.$on('$destroy', function() {
//Code to remove Event
});
如果您想在两者之间删除它,则可以侦听指令内部的事件,并在需要时从控制器广播或发射。
相关文章:
- 删除对HTML元素的拖动
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 从所有元素中删除HTML5验证
- 如何检查元素的内容是否为空,如果为空,请在jquery中删除该元素
- 从组件状态的数组中删除元素
- angularjs删除动态形式元素中的特殊字符
- Mongoose-在更新中删除数组元素
- 从数组中删除元素的最佳方法是:javascript/jquery
- 删除不起作用的父元素和所有子元素
- 一些元素没有从数组中删除
- 正在尝试删除子元素的最后一个子元素
- JavaScript-如何按类查找元素并删除此类
- 正则表达式条件来删除元素
- Small Javascript从动态表单中删除多个元素的问题
- javascript:在元素删除后停止setInterval
- JQUERY:动态 AJAX 和 html 元素删除
- AngularJS ngRepeat元素删除
- AngularJS & lt; select>使用ng-model和ng-options在元素删除时被破坏
- jQuery UI datetimepicker绑定到错误的输入后DOM元素删除
- 防止 jQuery 在元素删除时取消绑定事件