0

这是我要删除的元素:

<div id="tobeRemoved">
    <div class="eventAttached"></div>
    <div>
        <div class="eventAttached"></div>
    </div>
</div>

它的孩子可能有附加的事件。

现在我想从 dom 树中删除它,我知道我可以使用它:

var ele=document.getElementById("tobeRemoved");
ele.parentNode.removeChild(ele);

但是事件呢?它们是否同时自动清除?

顺便说一句,我更喜欢跨浏览器的解决方案。

4

2 回答 2

1

如果你知道事件类型,你可以试试这个:

function removeEventHandler(elem,eventType,handler) {
 if (elem.removeEventListener) 
    elem.removeEventListener (eventType,handler,false);
 if (elem.detachEvent)
    elem.detachEvent ('on'+eventType,handler); 
}

或 jQuery 的.unbind()函数。

于 2012-10-29T02:45:55.107 回答
0

如果事件是用 jQuery 添加的,它会在元素被移除时移除事件。

于 2012-10-29T02:45:30.867 回答