在基于jQuery Mobile的页面中将元素插入DOM
我正在尝试使用jQuery Mobile应用程序,该应用程序最终将最终作为移动设备上的非Web应用程序,因此所有内容都必须是本地的。 出于这个原因(我认为)我需要在由data-role="page"
标签描绘的单个页面中构建应用程序,否则jQuery Mobile中的ajax加载机制似乎不起作用。
该应用程序将从本地存储数据库中读取数据并将其显示在页面上的无序列表中,使用jQuery Mobile进行样式设置,看起来像本机应用程序。
在我的$(document).ready()
函数中,我执行数据库查找,对于每个结果,我在我的数据库结果周围创建一个
$(".list").append(li_str);
其中.list
是我的
标签的类。
页面呈现就像jQuery Mobile不存在一样 – 我在每个
将此结果与我在页面HTML中对
也许我需要在页面加载周期的早期从DB构建页面? 有什么建议?
问题是这个问题 。 所以,改变你的代码:
或者,您可以延迟创建列表视图,直到创建了所有元素(如链接线程中所述):
对不起代码转储; 我无法在jsfiddle中使用它 。
既不调用$("changed-parent-element").listview()
也不调用$("changed-parent-element").listview()
$("changed-parent-element").trigger("create")
对我来说真的很有效。 为了多次更改DOM内容并重做jQuery移动样式,我需要这样:
$("changed-parent-element").listview("refresh");
版本:jQuery mobile 1.0 RC2
马特的答案不是这个问题的一般答案。 在其他问题中,我已经多次介绍过这个问题。
上面的内容适用于listview,但不包含任何内容。
要在jQuery Mobile中向DOM添加元素,您需要知道.page()函数。
我在http://jquerymobiledictionary.pl/faq.html上做了一个教程