3

我使用 jQuery 和 jQuery UI 开发了一个大型“单页应用程序”。当我在应用程序中加载各个部分时,它会创建 jQuery UI 小部件,例如对话框或日期选择器。当我重新加载某些部分时,它们往往会徘徊并引起一些问题。我希望能够调用一个函数来销毁所有已加载的 jQuery UI 小部件并将它们从 DOM 中删除。有什么办法可以全部抓到吗?谢谢!

4

2 回答 2

7

理论上,定位和销毁页面上特定类型的所有小部件很容易:

$(":ui-draggable").draggable("destroy");

因此,围绕您知道正在使用的一系列小部件类型创建一个循环并删除列表中的每种小部件并不是不可想象的。

于 2012-10-25T05:48:02.217 回答
2

使用remove()detach()清除您的 jquery UI 小部件的内容,这就是区别

remove()从 DOM 中完全删除匹配的元素。

detach()类似于 remove(),但保留与匹配元素关联的存储数据和事件。

于 2012-10-25T06:00:26.423 回答