这是我要删除的元素:
<div id="tobeRemoved">
<div class="eventAttached"></div>
<div>
<div class="eventAttached"></div>
</div>
</div>
它的孩子可能有附加事件。
现在我想将它从dom树中删除,我知道我可以使用它:
var ele=document.getElementById("tobeRemoved");
ele.parentNode.removeChild(ele);
但事件怎么样?它们是否同时被清除?
BTW,我更喜欢跨浏览器解决方案。答案 0 :(得分:1)
如果你知道事件类型,你可以试试这个:
function removeEventHandler(elem,eventType,handler) {
if (elem.removeEventListener)
elem.removeEventListener (eventType,handler,false);
if (elem.detachEvent)
elem.detachEvent ('on'+eventType,handler);
}
或jQuery的.unbind()函数。
答案 1 :(得分:0)
如果使用jQuery添加事件,则会在删除元素时删除事件。