我正在运行此jQuery片段,以从基于ui-router的角度应用程序中删除所有事件侦听器,但似乎没有任何作用?这是非法操作吗?
$rootScope
.$on('$stateChangeStart',
function(event, toState, toParams, fromState, fromParams){
console.log("Going to remove event listeners"); // this fires
$(document).off();
});
似乎您需要专门选择元素才能从中删除事件处理程序。您可以使用.unbind()
删除对象中的所有事件,但我认为您无法在整个页面上执行此操作。See this question.