MooTools:destroy()和事件

时间:2010-01-30 12:13:23

标签: javascript mootools

当我在MooTools中.destroy() Element个对象时,destroy()会自动在内部调用element.removeEvents(),或者我需要牢记这一点。 (我正在删除之前已调用element.addEvent()的DOM中的元素。)

2 个答案:

答案 0 :(得分:3)

MooTools版本1.2.4中的

.destroy()

destroy: function(){
    Element.empty(this);
    Element.dispose(this);
    clean(this, true);
    return null;
}

如果浏览器需要,清除(项目,保留)功能会.removeEvents()

var clean = function(item, retain){
    ....
    if (item.clearAttributes){
        var clone = retain && item.cloneNode(false);
        item.clearAttributes();
        if (clone) item.mergeAttributes(clone);
    } else if (item.removeEvents){          
    ....
};

你应该安全,它正在排空元素。

此外,对于MooTools上面的所有代码,当然还有http://mootools.net/

答案 1 :(得分:2)

是的,当您在元素上调用removeEvents()时,Mootools会致电destroy()

(当前实现在名为clean()的函数中执行此操作,该函数从destroy()调用。