我对 PhoneGap 中的一些事件有疑问。当我尝试为phonegap-app(在PhoneGap-Build上构建)的暂停和后退按钮事件注册事件侦听器时,无法识别事件。
我的代码如下所示:
function onBackKeyDown() {
console.log("Back");
}
function onMenuKeyDown() {
console.log("Menu");
}
function pause() {
console.log("Menu");
}
function ready(){
console.log("ready");
document.addEventListener("pause", pause, false);
document.addEventListener("backbutton", onBackKeyDown, false);
document.addEventListener("menubutton", onMenuKeyDown, false);
}
document.addEventListener("deviceready", ready, false);
如果我在 HTC Wildfire 上运行此应用程序,我可以在日志中看到功能就绪(输出完成)。但如果我点击返回或搜索按钮或退出应用程序,则不会调用其他函数。
谁能帮我这个?
谢谢!
我的其余代码如下所示(我只是写了一个小例子来确保我的代码中没有错误......)
主.js:
function onBackKeyDown() {
console.log("Back");
alert("Back");
}
function onMenuKeyDown() {
console.log("Menu");
alert("Menu");
}
function onMenuSearch() {
console.log("onMenuSearch");
alert("onMenuSearch");
}
function pause() {
console.log("Menu");
alert("Pause");
}
function onResume(){
console.log("Resume");
alert("Resume");
}
function ready(){
alert("Ready");
console.log("ready");
document.addEventListener("pause", pause, false);
document.addEventListener("backbutton", onBackKeyDown, false);
document.addEventListener("menubutton", onMenuKeyDown, false);
document.addEventListener("searchbutton", onMenuSearch, false);
document.addEventListener("resume", onResume,false);
}
document.addEventListener("deviceready", ready, false);
索引.html
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title></title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width">
</head>
<body>
<!-- Add your site or application content here -->
<p>Hello world! This is HTML5 Boilerplate.</p>
<script src="js/main.js"></script>
</body>
</html>
正如我已经说过的,我正在使用 PhonegapBuild 在多个平台上构建应用程序,因此我没有将 cordova 脚本集成到我的应用程序中。
谢谢...