好奇,事件监听器会发生什么?
$('a.someclass', 'div.contextClass').on('click', function someFunction(){
console.log('clicked!');
});
当我删除div.contextClass
时$('div.contextClass').remove();
我首先需要这样做吗?
$('a.someclass', 'div.contextClass').off('click');
答案 0 :(得分:3)
当移除context
或parent
(<div>
)本身时,其中的所有内容(<a>
)都会从DOM中删除。事件处理程序仅在事件发生时执行处理程序。
但是当元素本身不存在时,它没有任何可以处理的事件,因为你没有让元素做click
或focus
之类的东西。< / p>
答案 1 :(得分:1)
请参阅jquery参考文档here
.remove()方法从DOM中获取元素。当你使用.remove()时 想要删除元素本身以及其中的所有内容。的在 除了元素本身,所有绑定事件和jQuery数据 与元素相关联的内容已删除。删除元素 如果不删除数据和事件,请改用.detach()。