Wie implementiert man Onclick in JavaScript und HTML für Geräte mit niedrigeren Versionen von Android?



0 Answers

Sie können nicht alle Ereignisse auf der Seite verwenden.

wenn Sie mousedown, mouseup, click, touchstart usw. anhängen, gibt es viele Kombinationen.
Ich schlage vor: - Gerät / Browser-Detektor zu implementieren - dann für mobile Touch- und für Desktop-Klick-Ereignisse anhängen

  • Sie können Kombination verwenden, aber alle klicken und nur eine Touch-Variante oder alle Touch-und ein klassisches Desktop-Event.

Beste Kombination: onClick und nur einen Mausklick oder Mouse-Up. Dann implementieren Sie ein Touch-Event, wenn Sie ein Problem mit einer Funktion haben.

Sie können auch einfachen Code wie folgt setzen:

<div onClick="CALL();" ontouchstart="CALL();" >

Sie können mein Browser- / Geräteskript bei dieser Antwort finden: Ähnliche Frage-Antwort

Question

Ich arbeite an einem Projekt, das perfekt in Geräten mit höherer Version funktioniert - ich habe es in Version 4.1.2 überprüft.

Das Problem ist, dass es in Geräten mit Android-Version 2.2.1 und 2.3.5 nicht funktioniert.

Ich habe sechs Bilder, denen ich Funktionalitäten hinzugefügt habe. Die Funktionalität für 2 Bilder besteht darin, eine andere HTML-Seite mit dem ID-Wert aufzurufen. Die Funktionalität für die anderen vier Bilder ist ebenfalls identisch, ABER die Bilder werden basierend auf dem Datenbankwert angezeigt.

Die Funktionalität für 2 Bilder besteht darin, eine andere HTML-Seite mit dem ID-Wert aufzurufen.

So habe ich codiert ..

<div id="header " class="header ">
     <div id="header_title" class="header_title"> </div>
     <div id="abc" class="abc"><img src="img/abc.png" onClick="abc()"/></div>
-----so -on

Ich habe die abc-Funktion als deklariert

function abc(){
   window.location.href="index.html";
}

Die Funktionalität für die anderen vier Bilder ist ebenfalls identisch, ABER die Bilder werden basierend auf dem Datenbankwert angezeigt.

if(value_in_db==0) {
  document.getElementById("xyz").innerHTML = '<img src="img/inactive.png" />'
} else {
  document.getElementById("xyz").innerHTML = '<img src="img/active.png" onclick="xyz()"/> '
}

Ich habe die xyz-Funktion als deklariert

function xyz(){
   window.location.href="basic.html";
}

Problemstellung:

In Android 2.2.1 und 2.3.5 funktioniert die Onclick-Funktionalität hin und wieder. Wenn Sie weiter versuchen zu klicken, wird die Funktion aufgerufen. Ich habe versucht, diesen Fehler für fast 2 Tage zu beheben.

Ich hatte ein ähnliches Problem mit der CSS-Position: behoben. Dies wurde in den niedrigeren Versionen von Android nicht unterstützt. Ich wurde hier mit einer Lösung vorgeschlagen.

Ich habe versucht, mit dieser addEventListener Funktion hat es nicht für mich funktioniert .

Ich hoffe ich bekomme eine Lösung für dieses Problem zu.

Bitte hilf mir das zu beheben und führe mich!

EDIT: 1 touchevent und deviceready

document.addEventListener("deviceready", onDeviceReady, false);
document.addEventListener( "touchstart", function(e){ onStart(e); }, false );
function onStart ( touchEvent ) 
{
   if( navigator.userAgent.match(/Android/i) ) 
   {
        touchEvent.preventDefault();
   }
}

Dies funktioniert in der höheren Version aber nicht in der unteren Endversion. Ich weiß, dass es grundlos ist, 2 document.addEventListener zu erwähnen document.addEventListener da es in den höheren Versionen funktioniert hat.




Related