jQuery Mobile:如何从字符串模板创建动态页面?

时间:2013-01-22 15:17:25

标签: web-applications jquery-mobile render dynamic-pages

大家好,这是我在stackoverflow中的第一个问题。我将尝试使用jQuery Mobile(用于UI)和PhoneGap创建单页Web应用程序(因为我希望它跨平台)。在我的应用程序中,我想通过一些模板(字符串)创建页面,当我点击按钮或列表元素时,应用程序从模板创建相应的页面并通过#attr导航它。我在第一次jqm以正确的方式呈现页面时加载模板,但是当我从DOM中删除它并在我需要页面时附加它时,jqm不会使用它的样式呈现页面,但我只看到链接(或其他元素)。谢谢大家!

2 个答案:

答案 0 :(得分:0)

默认情况下,jQuery Mobile会自动增强您网页上的相应标记,但如果您稍后添加动态内容,则需要在新网页上手动触发create事件。

例如

$('#newPageID').trigger('create');

来自Docs

  

但是,如果您通过生成新标记客户端或加载内容   Ajax并将其注入页面,您可以触发create事件   处理其中包含的所有插件的自动初始化   新标记。这可以在任何元素(甚至是页面)上触发   div本身),为您节省了手动初始化每个插件的任务   (列表视图按钮,选择等)。

答案 1 :(得分:0)

不幸的是,无论官方的jQuery Mobile文档方法是什么,.trigger('create')都无法重新整理页面。

应该使用它:

$('#newPageID').trigger('pagecreate');

以下是一个有效的例子:http://jsfiddle.net/Gajotres/vN45m/

它可以很容易地进行测试,只需用创建或注释全行代替pagecreate。