MooTools: destroy () и события - PullRequest
3 голосов
/ 30 января 2010

Когда я .destroy() Element объект в MooTools, делает. destroy() автоматически внутренний вызов element.removeEvents(), или мне нужно это помнить (Я удаляю элементы из DOM, которые ранее вызывали element.addEvent().)

Ответы [ 2 ]

3 голосов
/ 30 января 2010

.destroy () в MooTools, версия 1.2.4:

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

Функция clean (item, retain) выполняет .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/

2 голосов
/ 30 января 2010

Да, Mootools будет вызывать removeEvents() при вызове destroy() для элемента.

(Текущая реализация делает это в функции с именем clean(), которая вызывается из destroy()).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...