在jQuery + jQuery UI中,确实调用了.remove()
上的一个元素,该元素上还调整了可调整大小/可拖动的元素,它固有地调用.resizable('destroy')
+ .draggable('destroy')
或等效方法,可以正确清理所有内容?在调用remove之前,我是否必须销毁可调整大小的/可拖动的?jQuery删除是否也销毁resizables/draggables?
3
A
回答
1
看起来你不需要在致电remove
之前致电destroy
函数。 jQuery .remove
触发器.destroy
固有地。我无法在任何地方找到这个文件,我很惊讶地发现这一点。
当包含jQuery UI
时,库会覆盖jQuery的cleanData
函数以包含触发.remove
事件的代码。 (https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.widget.js#L16)
查看本演示 - http://jsfiddle.net/UMYzD - 调用.remove
函数时调用.remove
函数。现在从左侧窗格(http://jsfiddle.net/UMYzD/1)取消了jQuery UI,你会看到,在调用.remove
当.remove
事件处理程序不会被触发了。
$.cleanData = function(elems) {
for (var i = 0, elem; (elem = elems[i]) != null; i++) {
try {
$(elem).triggerHandler("remove");
// http://bugs.jquery.com/ticket/8235
} catch(e) {}
}
_cleanData(elems);
};
线$(elem).triggerHandler("remove");
触发微件和所有它调用的插件的.destroy
固有的方式约束该元素在.remove
事件。
下面是调用层次,
1
从jQuery的remove() docs摘自:
类似
.empty()
,该.remove()
方法取出DOM元素。当您想要移除元素本身以及其中的所有元素时,请使用.remove()
。 除了元素本身之外,所有与元素相关的绑定事件和jQuery数据都将被删除。要删除元素而不删除数据和事件,请改为使用.detach()
。
所以据说,它会删除调整大小,拖动事件也是如此。在从DOM中移除之前,jQuery可能会调用unbind()
或off()
。
相关问题
- 1. 当指令被销毁时,监听器是否被删除?
- 2. QWidget是否在销毁时从GUI中删除它自己?
- 3. 销毁jquery Modal
- 4. 删除/销毁完成期货asyncio Python
- 5. Laravel 5删除与销毁方法
- 6. 删除/销毁和编辑路由
- 7. 删除销毁所有情况后
- 8. 线程被销毁时,变量是否被销毁?
- 9. 销毁GtkBuilder是否销毁所有创建的小部件?
- 10. 销毁jQuery Flot图
- 11. jQuery cluetip('destroy')不会销毁/删除提示?
- 12. 如何使用jquery销毁/删除活动手风琴
- 13. 铁路删除/销毁方法将无法与jquery
- 14. 为什么删除和销毁方法不删除模型 - laravel
- 15. 重新安装Macports是否删除/销毁/ opt/local /目录结构的内容?
- 16. Javascript(Dojo):在销毁对象时是否删除事件侦听器
- 17. 是否删除容器在GTK内存中的小部件中销毁
- 18. `删除<pointer>`只销毁指针还是指针?
- 19. 使RSpec销毁记录而不是删除它们
- 20. CKEDITOR.htmlParser.element.remove()是否也会删除子项?
- 21. 是否可以手动销毁SurfaceView?
- 22. jQuery是否从已销毁的DOM内容中移除事件侦听器?
- 23. 拆除销毁控制器
- 24. Sharepoint Online:附件是否也删除ListItem时删除?
- 25. 正在销毁jQuery Sortable/Droppable
- 26. 销毁jquery ui手风琴
- 27. 销毁JQuery可拖动
- 28. 用户注销时是否必须销毁SESSION?
- 29. angular2销毁视图销毁订阅
- 30. 有多少种方式来删除/销毁jquery中的事件处理程序?
快照'我找不到这个记录任何地方,我很惊讶地发现了这一点.'虽然没有写入“删除通话消灭”的文档(和你在堆栈显示),它是写'除了元素本身,所有绑定的事件和关联数据的jQuery元素被删除'。但无论如何,谢谢你展示了堆栈。 – RaphaelDDL 2013-04-24 21:10:35
@RaphaelDDL不,文档专门讨论元素。这是不是删除元素或它的事件。它触发特定事件“删除”,以内部调用控件销毁功能。 – 2013-04-24 21:57:30