【发布时间】:2011-07-21 13:15:04
【问题描述】:
假设我有一个名为 widget 的 jquery 插件,它可以用于多个元素
例如$('.myClass').widget();
页面加载后,我将动态添加 HTML,其中包含更多具有 myClass 类的元素。如果我再次运行上面的代码,之前加载的小部件将再次被初始化。
我想出的一个解决方案是在小部件初始化后删除 myClass 类。
另一个想法是使用.data() 并存储一个初始化标志,在插件加载时检查它是否存在。
有更好的方法吗?
【问题讨论】:
-
我个人认为动态加载 HTML 很难清晰地分离 UI 和后端。我更喜欢动态加载数据并将所有 UI 及其逻辑(包括必要时的 HTML 创建)保留在 HTML 页面中。这往往会解决这样的问题。
-
如果您发现我的回答对您有帮助,请投票并将其标记为答案。谢谢!
标签: jquery jquery-plugins