[英]Android/ Phonegap - onClick() not working
我正在使用phonegap,并试图检测onClick,但Android似乎完全忽略它,下面是我正在尝试:
<select name="func" onclick="StartButtons();" data-native-menu="true">
我已经尝试过onClick的几个变种包括javascript,jQuery等等。但是这些似乎都不起作用。
我注意到onChange有效,但这对我没有多大用处,因为我需要使用一个提示,要求用户确认更改,如果不是那么什么都不做。 但是,使用onchange仍会更改下拉列表中的项目。
有人可以帮忙吗?
我遇到了与jQuery相同的问题,Android似乎忽略了javascript中的click事件。 最初,我的jQuery代码如下所示:
$("#element").click(function () { alert("message"); });
我不得不把它改成:
$("#element").on("touchend", function () { alert("message"); });
不确定你是否正在使用jQuery,但希望这会有所帮助。
使用javascript将click事件侦听器添加到您的对象。 首先向对象添加一个id:
<select id="obj_id" name="func" data-native-menu="true">
然后调用addEventListener():
document.getElementById("obj_id").addEventListener("click", StartButtons, false);
Phonegap文档建议在“deviceready”事件中运行所有javascript代码。 所以你的代码应该是这样的:
main.js:
function StartButtons() { ... }
function onDeviceReady() {
...
document.getElementById("obj_id")
.addEventListener("click", StartButtons, false);
...
}
function init() {
document.addEventListener("deviceready", onDeviceReady, false);
}
index.html的:
...
<script type="text/javascript" charset="utf-8" src="main.js"></script>
</head>
<body onload="init();">
...
<select id="obj_id" name="func" data-native-menu="true">
...
</body>
user1183085的答案是正确的。 Android不会像网络应用那样识别点击事件,因为移动应用在本机时不是网络,因此这就是为什么设置了phonegap,但因为它与jquery一起工作,而不是直接使用本机java的android库。 我把代码放在这里:
Web按钮或元素onclick可处理所有Web界面,以及用于处理移动界面的特殊按钮或元素。 这是我的代码的一部分:
//this handles the login button events for the mobile touch of the user
$("button.login-button").on("touchend", function () {alert('hello touch ! =o' )});
//this handles the login button events for web clicks
$("button.login-button").on("click", function () {alert('hello click ! =o' )});
谢谢用户user1183085,永远解决了我的生活=()
注意,绑定在Cordova 3.4中的输入上的onclick,不起作用。 但它对div元素很有用。 考虑到,输入元素是表单元素的一部分,就像select元素一样,它可能是你的问题。
https://ssl.gstatic.com'unsafe-eval'; style-src'self''unsafe-inline'; media-src *“>
从index.html中删除此代码
您是否尝试将方法设置为“方法”而不是“方法();”? 所以也许你可以尝试你的行:
<select name="func" onclick="StartButtons" data-native-menu="true">
希望你的方法会被调用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.