除非我点击刷新,否则滚动条不会加载。我假设这可以使用jQuery Mobile的pageinit
来修复。这就是我试过的:
$('#summaryPage').live('pageinit', function(){
$.getScript('cubiq-iscroll-bad88fb/src/iscroll.js');
});
没有骰子。有任何想法吗?
答案 0 :(得分:2)
var jsonp = document.createElement("script");
jsonp.type = "text/javascript";
jsonp.src = "cubiq-iscroll-bad88fb/src/iscroll.js";
document.getElementsByTagName("body")[0].appendChild(jsonp);
这应该可以正常工作。如果.js工作没有错误。希望这有帮助。
答案 1 :(得分:1)
您可以尝试:
<script>
$('#summaryPage').live('pageinit', function(){
var oHead = document.getElementsByTagName('HEAD').item(0);
var oScript= document.createElement("script");
oScript.type = "text/javascript";
oScript.src="other.js";
oHead.appendChild( oScript);
});
</script>
答案 2 :(得分:1)
因为.live将被弃用,你也可以
$(document).on('pageinit', '#summaryPage', function(){
//append head element and custom script
});
也可能是你加载你的脚本太晚了,自然如果我是你,我会在文档和/或设备准备就绪后立即执行,然后当页面inits检查元素是否存在如果没有,触发创建。您还可以在jquery移动API中收听事件,例如pagebeforecreate
或者更好的是,仍然将代码放在没有名称的全局函数中:
function(){
//append your script here
}
您可以在API
中阅读jquery.com上的文档答案 3 :(得分:1)
尝试在页面显示之前运行它:
$('div:jqmData(role="page")').live('pagebeforeshow',function(){
$.getScript('cubiq-iscroll-bad88fb/src/iscroll.js');
});