Phonegap Android后退button – 在主页上closures后退button的应用程序
我正在开发一个使用Jquery Mobile / Phonegap的Android应用程序。 我有以下代码来控制手机的后退button:
document.addEventListener("backbutton", backKeyDown, true); function backKeyDown() { // Call my back key code here. $.mobile.changePage("#homepage", "slideup"); }
这一切工作正常,但我想要的应用程序closures时只按下主页上的后退button,这可能吗?
更新:这已停止使用最新的Phonegap更新(据说)。 如果你知道的话,随时提供一个工作的解决scheme。
以下是我如何做到这一点:
document.addEventListener("backbutton", function(e){ if($.mobile.activePage.is('#homepage')){ /* Event preventDefault/stopPropagation not required as adding backbutton listener itself override the default behaviour. Refer below PhoneGap link. */ //e.preventDefault(); navigator.app.exitApp(); } else { navigator.app.backHistory() } }, false);
有关详细信息,请参阅以下完整示例的相关文档: http : //docs.phonegap.com/en/2.0.0/cordova_events_events.md.html#backbutton
document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() { document.addEventListener("backbutton", onBackKeyDown, false); } function onBackKeyDown() { navigator.app.exitApp(); }
谢谢你,spader。
您需要跟踪主页的显示时间。 当你知道你在主页上打电话时:
navigator.app.exitApp();
如果您不想使用jQuery Mobile,请在$.mobile.activePage.is('#homepage')
更改为document.getElementById('#homepage')
closures答案,如下面的代码所示:
document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady(){ document.addEventListener("backbutton", function(e){ if(document.getElementById('#homepage')){ e.preventDefault(); navigator.app.exitApp(); } else { navigator.app.backHistory() } }, false); }
通过这种方式,不需要为此目的下载Jquery Mobile乱码。 此外,activePage从JQuery移动1.4.0弃用,将从1.5.0中删除。 ( 使用pagecontainer小部件中的getActivePage()方法 )
- 如何检查cordova android版本的cordova / phonegap项目?
- 一个新项目上缺lesscordova.js
- iPhone的UIWebview:如何强制数字键盘? 可能吗?
- java.io.FileNotFoundException:该文件不能作为文件描述符打开; 它可能是压缩的
- 使用Bootstrap 3,jQuery和phonegap的移动应用程序,可以吗?
- 无法在CLI上从Git安装Cordova插件
- 在android phonegap中单击button时退出应用程序?
- cordova平台添加Android不工作,同时上市Android目标
- 在Phonegap 3.x CLI上构buildAndroid版本的apk