我正在尝试使用Phonegap做一个简单的警报框,这真的很难。在我看了很多教程后,我无法让它工作,模拟器和设备内测试也无法正常工作。
所以我绘制了3个div,每个div都是一个颜色不同的盒子。然后,当我点击它时,我试着用一个简单的警告框,用不同的代码。当Eclipse将Apk加载到我的手机中时,它不会构建当前的工作版本,有时也会构建。当它发生时,我可以尝试应用程序,然后意识到没有任何点击事件有效。
这是我的代码:
的index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="format-detection" content="telephone=no" />
<!-- WARNING: for iOS 7, remove the width=device-width and height=device-height attributes. See https://issues.apache.org/jira/browse/CB-4323 -->
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
<link rel="stylesheet" type="text/css" href="css/index.css" />
<title>Testing</title>
</head>
<body onload="DOMloaded()">
<div id="box" onclick="funcClick()"></div>
<div id="box2"></div>
<div id="box3"></div>
<script type="text/javascript" src="cordova.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript" src="js/index.js"></script>
</body>
</html>
index.css
#box {
width: 300px;
height: 300px;
background-color: yellow;
}
#box2 {
width: 300px;
height: 300px;
background-color: red;
}
#box3 {
width: 300px;
height: 300px;
background-color: blue;
display: inline-block;
}
index.js
function DOMloaded() {
document.addEventListener("deviceready", phonegapLoaded, false);
}
function phonegapLoaded() {
function funcClick() {
alert("Yellow box onclick event");
};
$("#box2").click(function() {
alert("Red box jQuery click event");
});
$("#box3").on('touchstart', function() {
alert("Blue box jQuery and Phonegap touch event");
});
alert("Events loaded");
}
唯一有效的是alert("Events loaded").
请帮帮我。
答案 0 :(得分:0)
您在本地范围内定义了“funcClick”(在“phonegapLoaded”函数的范围内),因此它不适用于div click。我无法给出好的解释(也许有人会在评论中解释)为什么box2和box3没有任何反应,但我有工作解决方案:
function funcClick () {
alert("Yellow box onclick event");
};
function phonegapLoaded () {
$(document).on("click", "#box2", function(){
alert("Red box jQuery click event");
});
$(document).on('touchstart', "#box3", function (){
alert("Blue box jQuery and Phonegap touch event");
});
alert("Events loaded");
}