使用jquery mobile创建移动应用程序但是在通过changePage加载外部页面(loggedin.html)之后,外部页面中的javascript文件没有加载,但只有在刷新页面后才这样做(loggedin.html ...通过加载changePage)。如何在没有页面刷新的情况下加载外部脚本
我有两套文件: index.html和loggedin.html。
CODE:
1.index.html
<body>
<div data-role="page" id="indexpage">
<div data-role="content">
<a href="" id="next" data-role="button">Load page 2</a>
</div>
</div>
<script src="custom/scripts/index.js" type="text/javascript" ></script>
</body>
脚本(index.js)
$('document').ready(function(){
$('#next').click(function(){
$.mobile.changePage('loggedin.html')
});
});
2.Loggedin.html
<body>
<div data-role="page" id="loggedin">
<div data-role="content">
You are in
</div>
</div>
<script src="custom/scripts/loggedin.js" type="text/javascript" ></script>
</body>
脚本(loggedin.js)
$('document').ready(function(){
$('document').on("pageshow","#loggedin",function(){
console.log('loaded');
});
});
答案 0 :(得分:1)
基于此来源:http://demos.jquerymobile.com/1.3.2/faq/scripts-and-styles-not-loading.html
构建jQuery Mobile站点时最简单的方法是在每个页面的头部引用同一组样式表和脚本。如果您需要加载特定页面的特定脚本或样式,我们建议将逻辑绑定到pageinit事件(详细信息如下),以便在创建特定页面时运行必要的代码(可以通过其id属性或数字来确定)其他方式)。
答案 1 :(得分:0)
这个问题的解决方案是:在下一页(loggedin.html)上。那就是将脚本放在(数据角色内容/页脚)之后的页面上
T = U &