Angular DOM 事件命名空间
Angular DOM event namespace
如何在 AngularJS 中命名我的 DOM 事件?
我有一些在文档上绑定鼠标事件的指令:
$document.on('mousemove');
$document.on('mouseup');
在 mouseup 之后我做了:
$document.off('mousemove');
$document.off('mouseup');
然后其他一些指令不起作用,因为事件被销毁了。
在 Angular 的 angular.element 文档中写道:
on() — Does not support namespaces, selectors or eventData
好吧,但我想我需要 event namespaces 来定位要删除的事件。那么,我该怎么办呢?
即使 jqLite 不支持名称空间(目前至少),您始终可以使用带有 handler
参数的 .off()
来指定您应该删除哪个侦听器。例如:
function mouseMoveHandler() {
// do some stuff
}
$document.on('mousemove', mouseMoveHandler);
// ... and later on
$document.off('mousemove', mouseMoveHandler);
如何在 AngularJS 中命名我的 DOM 事件?
我有一些在文档上绑定鼠标事件的指令:
$document.on('mousemove');
$document.on('mouseup');
在 mouseup 之后我做了:
$document.off('mousemove');
$document.off('mouseup');
然后其他一些指令不起作用,因为事件被销毁了。
在 Angular 的 angular.element 文档中写道:
on() — Does not support namespaces, selectors or eventData
好吧,但我想我需要 event namespaces 来定位要删除的事件。那么,我该怎么办呢?
即使 jqLite 不支持名称空间(目前至少),您始终可以使用带有 handler
参数的 .off()
来指定您应该删除哪个侦听器。例如:
function mouseMoveHandler() {
// do some stuff
}
$document.on('mousemove', mouseMoveHandler);
// ... and later on
$document.off('mousemove', mouseMoveHandler);