我一直在努力解决这个问题,在我的cordova应用程序中,后退按钮将退出应用程序,无论如何。我已尝试过我在网上遇到的所有解决方案,但没有取得任何成功。
我尝试的所有解决方案(例如下面的例子)产生了相同的结果。
document.addEventListener("backbutton", onBackKeyDown, false);
function onBackKeyDown() {
// Handle the back button
}
我的回调中的代码执行没有问题,但在执行后,它退出应用程序。我可以通过在我的函数中包含ReferenceError
来阻止退出,例如
console.log(undefinedVar);
但这显然不是最佳做法。
我尝试过的其他解决方案包括使用回调和离子event.preventDefault()
函数中的registerBackButtonAction
。
任何建议都将不胜感激。
答案 0 :(得分:0)
enter code here
<!DOCTYPE html>
<html>
<head>
<title>Stopping Back Button</title>
<link rel="stylesheet" type="tex`enter code here`t/css" href="style.css">
<script>
function getTitle() {
document.getElementById("ct").innerHTML = "DEMO: " + document.title;
}
</script>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
getTitle();
}
// device APIs are available
//
function onDeviceReady() {
// Register the event listener
document.addEventListener("backbutton", onBackKeyDown, false);
}
// Handle the back button
//
function onBackKeyDown() {
alert('Back Button Disabled');
console.log('Back Button Disabled');
}
</script>
</head>
<body onload="onLoad()">
<ul id="nav">
<li><a href="index.html">← Back</a></li>
<li><a href="#" id="ct" onclick="location.reload();"></a></li>
</ul>
</body>
</html>