Android JQuery移动阻止后台导航

Android JQuery移动阻止后台导航,android,jquery-mobile,navigation,stoppropagation,Android,Jquery Mobile,Navigation,Stoppropagation,我看过一些关于这个话题的帖子,但没有一篇提供了合适的解决方案 一旦用户导航到下一页,我想阻止他返回到上一页。我的页面中没有后退按钮,但通过平板电脑/手机设备后退按钮仍可以进行后退导航 我相信这是一款带有preventDefault和stopImmediatePropagation的产品,但我不知道如何定位设备/浏览器后退按钮。我找到了一种很好的方法,用android对其进行了测试,效果很好 首先确保已将cordova.js添加到库中 第二个,在收尾标题标签的正上方添加以下内容: <scri

我看过一些关于这个话题的帖子,但没有一篇提供了合适的解决方案

一旦用户导航到下一页,我想阻止他返回到上一页。我的页面中没有后退按钮,但通过平板电脑/手机设备后退按钮仍可以进行后退导航


我相信这是一款带有
preventDefault
stopImmediatePropagation
的产品,但我不知道如何定位设备/浏览器后退按钮。

我找到了一种很好的方法,用android对其进行了测试,效果很好

首先确保已将cordova.js添加到库中

第二个,在收尾标题标签的正上方添加以下内容:

<script>
function onLoad() {
document.addEventListener('deviceready', deviceReady, false);
}

function deviceReady() {
   document.addEventListener('backbutton', backButtonCallback, false);
}

function backButtonCallback() {
   navigator.notification.confirm('do you want to exit the app?',confirmCallback);
}
function confirmCallback(buttonIndex) {
   if(buttonIndex == 1) {
      navigator.app.exitApp();
   return true;
}
else {
   return false;
}
}
</script>

函数onLoad(){
文件。添加的监听器('DeviceRady',DeviceRady,false);
}
函数devicerady(){
document.addEventListener('backbutton',backButtonCallback,false);
}
函数backButtonCallback(){
navigator.notification.confirm('您想退出应用程序吗?',confirmCallback);
}
函数confirmCallback(按钮索引){
如果(按钮索引==1){
navigator.app.exitApp();
返回true;
}
否则{
返回false;
}
}
第三个和最后一个,用以下内容更改起始身体标签:

<body onload="onLoad()">


是否要阻止用户一直向后导航?或者在某种情况下?@Omar,我想一直阻止所有的反向导航。我只知道如何在某些链接上防止它,但不是作为一个整体。@Omar,谢谢,但我找到了正确的方法,补充了一个答案。你可以在没有cordova的情况下实现这一点。当使用浏览器的“后退”按钮时,您可以将用户重定向到另一个页面。@omar,这也是正确的,但我需要它来为需要cordova的内置android应用程序工作,我也需要它来在硬件“后退”按钮上工作。如果您已经在使用cordova,那么这是另一个问题:)这是一个jQM方法,我实际上并没有使用cordova,它是从html5、css和jqm创建android应用程序时需要的:)我马上检查:)