我正在用netbeans编写一个井字棋作为我的第一个cordova应用程序。
我正在使用jQuery Mobile,我已经设计了粗略的UI。
下面是UI的源代码:
<!--
Menu Page
-->
<div data-role = "page" data-theme="b" id="MenuPage">
<div data-role = "header" data-theme="b">
<h2 class = "Title">Tic-Tac-Toe</h2>
</div>
<div data-role = "main-page" data-theme="b">
<div data-role="controlgroup" data-type="vertical">
<a href="#BoardPage" data-role="button" data-theme="b">Single Player</a>
<a href="#" data-role="button" data-theme="b">Multi Player</a>
<a href="#" data-role="button" data-theme="b">Leader Board</a>
<a href="#" data-role="button" data-theme="b">About</a>
<a href="#" data-role="button" data-theme="b" id="btnExit">Exit</a>
</div>
</div>
</div>
<!--
Board Page
-->
<div data-role="page" data-theme="b" id="BoardPage">
<div data-role="main-page" data-theme="b" id = "tabHolder">
<div data-role="content">
<center>
<div class="ui-grid-b" style="position: absolute; top: 38%; width:100%; margin-left:-1em">
<div class="ui-block-b">
<a data-role="button" id="b1"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b2"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b3"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b4"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b5"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b6"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b7"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b8"></a>
</div>
<div class="ui-block-b">
<a data-role="button" id="b9"></a>
</div>
</div>
</center>
</div>
</div>
</div>
我有一个退出按钮,我想在点击这个按钮时退出应用程序
My Code:
<script>
$(document).on('pageinit', '#MenuPage', function(events){
$(document).on('click', '#btnExit', function(event){
navigator.app.exitApp();
});
});
</script>
作为响应,我得到以下netbeans异常:
Uncaught TypeError: Cannot call method 'exitApp' of undefined
我试过用谷歌搜索这个问题,但似乎没有任何效果。
寻求帮助
添加到脚本前
<script type="text/javascript" src="cordova.js"></script>
如果仍然失败,试试
navigator.device.exitApp();
当你在手机上看到应用程序时,你是否立即点击退出按钮?
在调用exitApp方法之前,需要等待deviceReady事件
你能做的是在设备就绪事件被触发后显示菜单。如
<style>
#MenuPage {
visibility:hidden;
}
<style>
<script>
document.addEventListener("deviceready",displayMenu,false);
function displayMenu () {
alert("Displaying Menu...");
document.getElementById("MenuPage").style.visibility="visible";
}
</script>