2016-05-02 6 views
1

HINWEIS: Das folgende Problem tritt nur auf Android-Versionen oben 4.4.2 (soweit ich weiß) Cordova/Android auf Klick-/Tap/VHIER KLICKEN/Berührungsstart nicht funktioniert


TL; DR Tasten mit Klick/tap/vclick/touchstart, die an sie angehängt sind, scheinen nur teilweise (10-30% der Zeit) in meiner cordova App zu funktionieren (nur Android).


Ich versuche, eine Hybrid-App für iOS/Android/Windows zu entwickeln. In der App habe ich gelegentlich Schaltflächen, die einige Aktionen auslösen müssen.

Im Allgemeinen würde ich .on('click', function() { ... }); verwenden, aber ich habe gelernt, dass click nicht wirklich mit mobilen Geräten zusammenarbeiten.

Ich versuchte, click mit vclick, tap und touchstart zu ändern. Aber nichts scheint meine Klickereignisse auszulösen.

Als nächstes versuchte ich zu sehen, ob es vielleicht ein CSS gibt, das meine Auslöser blockiert, aber nichts Konsequentes.

Das Problem dabei ist, wenn ich das folgende Stück Code in meiner Konsole anwenden, würde es funktionieren manchmal (nicht immer):

$('.anyElement').on('tap', function(){ 
    console.log("tapped"); 
}); 

Ich habe auch versucht die folgende, weil ich die Bindung gedacht wurde, irgendwie durcheinander:

$('.anyElement').off().on('tap', function(){ 
    console.log("tapped"); 
}); 

Also momentan bin ich irgendwie nicht sicher, wo ich mehr suchen soll. Wenn es vielleicht Möglichkeiten für mich gibt, herauszufinden, warum meine Sachen nicht ausgelöst werden, wäre das großartig!

Antwort

0

hatte das gleiche Problem auf einer Cordova jquery App auf Intel XDK, was löste es für mich, zumindest für jetzt ist "fastclick.min.js" in meinem Index.html zu kommentieren. scheint fastclick.min.js war das Problem auf Android, da es auf IOS arbeitete, check out http://community.phonegap.com/nitobi/topics/simple-js-events-like-onclick-are-not-working-on-devices er auch sooved durch Entfernen einige konfliktbehaftete js, "glowstate.js" in seinem Fall. bin immer noch versucht, eine bessere Lösung zu finden, wenn es existiert

+0

Leider habe ich nicht die fastclick Bibliothek verwendet. Ich habe jedoch versucht, die anderen Bibliotheken zu überprüfen und zu kommentieren, aber nichts hat sich für mich geändert. Hier ist eine kurze Zusammenfassung der Bibliotheken, die ich verwende: cordova.js, jquery-1.8.2.min.js, jquery.mobile-1.3.0.min.js, jquery.event.drag-2.2.js, jquery .mobile.simplledialog2.min.js, jQMProgressBar.js, slick.core.js, slick.grid.js, slick.dataview.js, slick.pager.js, toastr.min.js, moment.min.js, Unterstrich .min.js, data-selector.js und statusbar.js –