jQuery mobile 正在阅读并用它自己的 DOM 替换我的 DOM。我打开了 jQuery 和 jQuery Mobile 的源代码;我在哪里可以找到正在读取和替换的东西?
我想了解这个特性的原因是因为我异步注入了我自己的 DOM,并且我想再次运行 jQuery Mobile“编译器”,以便它以 jQuery Mobile 的样式呈现我的新 DOM。
jQuery mobile 正在阅读并用它自己的 DOM 替换我的 DOM。我打开了 jQuery 和 jQuery Mobile 的源代码;我在哪里可以找到正在读取和替换的东西?
我想了解这个特性的原因是因为我异步注入了我自己的 DOM,并且我想再次运行 jQuery Mobile“编译器”,以便它以 jQuery Mobile 的样式呈现我的新 DOM。
这件事不容易确定。从 JQM 1.4 开始,您可以查看所有 JQM 内容小部件,并检查在enhanced
未设置小部件选项时运行哪些功能 - 通常应该在_enhance()
至于阅读和写作data-foo
,最终将是您的 JavaScriptget/setAttribute
方法,并对命名空间进行一些修改。
如果你注入自己的 DOM,你可以 - 注入预先增强的标记 ~ 没有data-
属性,但完成的内容(如果你想更改任何小部件选项,你应该留下data-
属性 - 注入非增强标记 = 只是带有data-
属性的纯 HTML。
在这两种情况下,您都需要调用enhanceWithin()
包含您动态添加的内容的 parent(!)。在第一种情况下,JQM 然后只创建小部件对象。在第二种情况下,JQM 创建必要的标记和小部件对象(较慢)。