无法覆盖每个页面上的后退按钮 cordova/phonegap 应用
Unable to override backbutton on every page cordova/phonegap app
由于 EventListeners
绑定到 deviceready
事件并且 deviceready
事件仅在设备注册时触发一次,我无法在每个页面上覆盖 backbutton
根据我的应用程序的要求。
我试图寻找答案,但找不到。请协助如何实现这一目标。
我的页面正在 IFrame
中加载
EventListeners
未绑定到 deviceready
事件。以Cordova默认的EventListener
为例,捕捉deviceready
事件,并在事件发生时添加函数
- 当我们希望捕获事件并希望对它们执行某些操作时,我们可以在代码中的任何时间点使用
EventListeners
。
因此,将它们添加到 <script>
标记或 JavaScript
文件中,您将重定向用户的新页面。
document.addEventListener("backbutton", onBackKeyDown, false);
function onBackKeyDown(e) {
e.preventDefault();
alert('Back Button is Pressed!');
}
有关详细信息,请参阅 this 页面。
只需使用此代码:
document.addEventListener("deviceready", function(e){
BackButton.override();
}, false);
将此代码放在您的 phonegap 项目中的结束 body 标记之前。
经过测试,工作正常。
由于 EventListeners
绑定到 deviceready
事件并且 deviceready
事件仅在设备注册时触发一次,我无法在每个页面上覆盖 backbutton
根据我的应用程序的要求。
我试图寻找答案,但找不到。请协助如何实现这一目标。
我的页面正在 IFrame
EventListeners
未绑定到deviceready
事件。以Cordova默认的EventListener
为例,捕捉deviceready
事件,并在事件发生时添加函数- 当我们希望捕获事件并希望对它们执行某些操作时,我们可以在代码中的任何时间点使用
EventListeners
。
因此,将它们添加到 <script>
标记或 JavaScript
文件中,您将重定向用户的新页面。
document.addEventListener("backbutton", onBackKeyDown, false);
function onBackKeyDown(e) {
e.preventDefault();
alert('Back Button is Pressed!');
}
有关详细信息,请参阅 this 页面。
只需使用此代码:
document.addEventListener("deviceready", function(e){
BackButton.override();
}, false);
将此代码放在您的 phonegap 项目中的结束 body 标记之前。
经过测试,工作正常。