我正在将我的网站从使用jQueryUI转换为jQuery Mobile,我遇到了一些麻烦。
我有一个页面,可以让用户添加新的时间表条目。他们点击“添加”按钮,然后从服务器右侧检索部分视图到页面上。
问题是jQuery Mobile不适用于部分视图中的任何元素。
如何强制jQuery Mobile在插入页面后处理我的元素?
答案 0 :(得分:2)
简短的回答是,您只需在插入局部视图的父元素上触发create
方法。
例如$('#container').trigger( "create" );
或者,大多数小部件可以通过在元素上调用它们来手动初始化,例如列表视图:$('#myListview').listview()
。如果您只有一些需要增强的元素并且您不想遍历容器的所有子元素,那么这将非常有用。您还应该知道,对于许多小部件,还有一个刷新方法,如果您在初始化之后添加元素(例如$('#myListview').listview('refresh)
),则可以调用该方法。
另请参阅JQM文档中的以下Q & A,该文档处理此问题并解释为何需要调用这些方法。
问题:注入页面的内容未得到增强。
答案:
jQuery Mobile无法知道何时将内容注入到内容中 页。让jQuery Mobile知道你已经注入了必须的内容 增强,您需要确保调用插件 在父容器上增强新元素或触发(“创建”) 所以你不必手动调用每个插件。