我的 index.html 看起来像这样:
<!DOCTYPE html>
<html class="ui-mobile-rendering">
<head>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no;" />
<meta charset="utf-8">
<link rel="stylesheet" href="css/jquery.mobile-1.1.0.min.css" />
<list rel="stylesheet" href="css/app.css" />
<script src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/underscore.js"></script>
<script type="text/javascript" src="js/backbone.js"></script>
<script type="text/javascript" src="js/views/attachmentlist.js"></script>
<script type="text/javascript" src="js/models/attachmentmodel.js"></script>
<script type="text/javascript" src="js/app.js"></script>
<script src="js/jquery.mobile-1.1.0.min.js"></script>
<script type="text/javascript" charset="utf-8" src="js/cordova-1.7.0rc1.js"></script>
</head>
<body></body>
</html>
绝对没有这些文件有对 jQuery Mobile 的引用,只有索引有。
我的 app.js 文件如下所示:
$(document).live("mobileinit", function () {
console.log('in Mobile Init');
$.mobile.ajaxEnabled = false;
$.mobile.linkBindingEnabled = false;
$.mobile.hashListeningEnabled = false;
$.mobile.pushStateEnabled = false;
// Remove page from DOM when it's being replaced
$('div[data-role="page"]').live('pagehide', function (event, ui) {
$(event.currentTarget).remove();
});
});
某些东西导致“移动初始化”触发两次。我不确定它是什么,或者即使它真的是一个问题,但感觉就像是不应该发生的事情。
有什么办法可以解决这个问题吗?
编辑
我实际上只是注意到,如果我将一个简单的“脚本”标签直接放入正文并在那里执行 console.log,它会运行两次....sooo....这段代码中的某些内容导致我的整个页面初始化两次。
事实上,它实际上看起来好像我的整个设置加载了两次。我将 console.logs 放置在应用程序首次加载时发生的事情的整个链中,并且一切都发生了两次。