gpt4 book ai didi

Javascript 后退按钮事件监听器覆盖 android 设备后退按钮

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:42:01 24 4
gpt4 key购买 nike

我使用 cordova 2.6.0 创建了 Android 应用。我使用 html 标记和 jQuery 在我的应用程序中实现了一个 menu 功能,它可以切换与设备的 menubutton 的交互。但我想不出要达到以下要求,使其表现得像 native 应用程序。

要求

如果 menu 可见,则 menu 应该在按下设备的 backbutton 时隐藏。如果 menu 不可见,backbutton 现在应该正常运行,也就是说,它应该 exit app或转到 back history

这是我的代码

document.addEventListener('deviceready', function(){

document.addEventListener('menubutton', function(){
//Toggle Menu
//Which is working fine
});

document.addEventListener('backbutton', function(){
if(menu is visible) {
//Hide the menu
//This is also working fine
return false;
}

//BUT the default action of backbutton has gone. It cannot exit the app , neither it brings to back history.

//return true;
//I have also tried to return boolean true , but facing the same problem.
});

}, false);

实际问题

如果我为 backbutton 附加了一个 eventlistener,则设备的 Back Button 被禁用,它无法正常工作。

我的问题是

document.addEventListener('backbutton', function(){}); 是否覆盖了设备的后退按钮?如何摆脱它?

这发生在 Android 4.1.2 设备上

最佳答案

一旦您使用监听器覆盖了后退按钮,它就不会执行 native 功能。您还必须实现退出行为。

在您的覆盖方法中,使用以下内容

document.addEventListener('backbutton', function(){
if(menu is visible) {
//Hide the menu
//This is also working fine
return false;
}
else //nothing is visible, exit the app
{
navigator.app.exitApp();
}
});

希望对您有所帮助。

关于Javascript 后退按钮事件监听器覆盖 android 设备后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18997793/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com