1
這是我的代碼:確認對話框返回false立即
index.html:
...
<script type="text/javascript" charset="utf-8" src="main.js"></script>
</head>
<body onload="init();"></body>
...
main.js:
function onBackPressed(e) {
console.log("onBackPressed()");
var answer = confirm("Do you want to exit?");
console.log(answer);
if (answer) {
navigator.app.exitApp();
}
}
function init() {
...
document.addEventListener("backbutton", onBackPressed, false);
...
}
當我退出應用程序第一次,一切似乎是確定。 問題是我下次啓動應用程序時,確認對話框立即返回false並且對話框保持可見狀態。所以當我點擊「確定」時,什麼都不會發生。
下面是logcat的輸出:
04-11 16:16:26.444: D/PhoneGapLog(18356): onBackPressed()
04-11 16:16:26.444: D/PhoneGapLog(18356): file:///android_asset/www/main.js: Line 49 : onBackPressed()
04-11 16:16:26.444: I/Web Console(18356): onBackPressed() at file:///android_asset/www/main.js:49
04-11 16:16:26.584: D/PhoneGapLog(18356): false
04-11 16:16:26.584: D/PhoneGapLog(18356): file:///android_asset/www/main.js: Line 51 : false
04-11 16:16:26.584: I/Web Console(18356): false at file:///android_asset/www/main.js:51
這是PhoneGap的或Android的錯誤?或者我做錯了什麼?
我使用Nexus One與android 2.3.6和phonegap 1.4.1(版本1.5有問題與backbutton事件)。
顯示如何onbackpressed()被執行 - 並且看看這裏:http://stackoverflow.com/a/3212253/295783 – mplungjan 2012-04-11 14:43:18
我有'的onload = 「init()」'在身體標記和init函數中我有'document.addEventListener(「backbutton」,onBackPressed,false);'。 onBackPressed()函數包含上面的代碼。 – Chemik 2012-04-11 15:34:41