我在 Cordova (phonegap) 中重复警报时遇到问题,javascript 如下所示:
navigator.notification.alert(
'Something is amiss', // message
function(){}, // callback
'DatabaseManager error processing SQL', // title
'Ok' // buttonName
);
当我导航到另一个页面时,例如使用后退按钮,警报会再次显示。如果我进一步导航,警报会重复 x2 次,依此类推。
注意:即使我尝试不同的导航方法也会发生这种情况,例如:
$.mobile.changePage("LogOn.html");
window.location.href = "LogOn.html";
<a href="#" data-rel="back" data-icon="back">back</a>
我发现当我离开页面时(但仅在某些情况下),脚本通常会运行两次(警报只是一个示例)。我怀疑发生这种情况是因为我在警报中显示了一个错误,并且该错误导致脚本以某种神奇的方式再次运行。关于可能是什么原因的任何想法?
额外信息: 我使用单页模型(一页 pr html 文件),加载 init 并从 html 运行我的脚本,如下所示:
<script src="../js/PickMode.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).bind("pageinit", function() {
initPickMode(); //this method lives in PickMode.js
});
</script>