当我在MooTools中.destroy()一个Element对象时,.destroy()会自动在内部调用element.removeEvents(),或者我需要记住这一点。(我正在从DOM中删除以前调用过element.addEvent()的元素。)
发布于 2010-01-30 20:20:41
MooTools 1.2.4版中的.destroy():
destroy: function(){
Element.empty(this);
Element.dispose(this);
clean(this, true);
return null;
}如果浏览器需要,clean(item,.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/
发布于 2010-01-30 20:21:05
是的,当你在一个元素上调用destroy()时,Mootools会调用removeEvents()。
(当前实现在一个从destroy()调用的名为clean()的函数中执行此操作)。
https://stackoverflow.com/questions/2167831
复制相似问题