Android/ Phonegap - OnClick() Not Working January 21, 2023 Post a Comment I am using phonegap and am trying to detect the onClick, however Android seems to completely ignore it, below is what I am trying: Solution 1: I had the same problem with jQuery, Android seems to ignore the click event in javascript. Originally, my code with jQuery looks like this: $("#element").click(function () { alert("message"); }); Copy I had to change it to: $("#element").on("touchend", function () { alert("message"); }); Copy Not sure if you're using jQuery at all, but hope this helps. Solution 2: Add click event listener to your object with javascript. First add an id to object: <select id="obj_id" name="func" data-native-menu="true"> Copy And then call addEventListener() : document.getElementById("obj_id").addEventListener("click", StartButtons, false); Copy Phonegap documentation recomends to run all your javascript code in "deviceready" event. So your code should look like this: main.js: function StartButtons() { ... } function onDeviceReady() { ... document.getElementById("obj_id") .addEventListener("click", StartButtons, false); ... } function init() { document.addEventListener("deviceready", onDeviceReady, false); } Copy 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> Copy Solution 3: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *"> delete this code from index.html Solution 4: user1183085´s answer is the right one. Android does not recognize click events as web apps do, this makes sence since mobile apps are not web when native, so that is why phonegap was made but since it works with jquery and not native java android libraries directly. I put my code this way: The web buttons or elements onclick to handle all web interfaces, and special buttons or elements ontouchend to handle the mobile interfaces. Here´s a part of my code: //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' )}); Copy thanks user user1183085, that solved my life forever =() Solution 5: Watch out, bind an onclick on an input in Cordova 3.4, doesn't work. But it works great with a div element. Considering, input elements are part of form element, like select element, it may be your problem. Share Post a Comment for "Android/ Phonegap - OnClick() Not Working"
Post a Comment for "Android/ Phonegap - OnClick() Not Working"