我使用页面导航,为此我使用.live页面显示事件,如下所示
$('#watchlist').live('pageshow', function(event) {
watchList();
});它给出了我期望正确结果,但如果我想在模板上添加任何javascript文件,我是否可以这样做,以便我可以使用永久模板的其他功能。
我只想用js加载模板上的动态模板,而不是索引页面上的所有js文件,因为它在某个地方冲突
发布于 2013-05-14 17:43:02
简介
此答案是对该评论的响应
“我只想用不同的html页面导航,包括不同的js和css文件。”
为了理解这个答案,让我们来讨论一下jQuery移动端是如何工作的。它使用ajax将其他页面加载到DOM.中
第一页加载正常。它的HEAD和BODY被加载到DOM,中,它们在那里等待其他内容。加载第二个页面时,仅将其BODY内容加载到DOM.中
解决方案
这里有两种解决方案:
解决方案1
在第二个页面和每隔一个页面中,将SCRIPT,LINK和STYLE标记移动到BODY内容中,如下所示:
<body>
<script>
// Your javascript will go here
</script>
<link rel="stylesheet" href="some.css" />
// And rest of your HTML content
</body>这是一个快速的解决方案,但对我来说,这是一个丑陋的解决方案。
解决方案2
在您的按钮和每个元素中使用rel="external"来更改页面。正因为如此,ajax将不会用于页面加载,而您的jQuery移动应用程序将表现得像一个普通的web应用程序。
<a href="#second" class="ui-btn-right" rel="external">Next</a>官方文档,请查找一个章节:。不幸的是,移动应用会因此而丢失页面过渡。
https://stackoverflow.com/questions/16536057
复制相似问题