2016-08-29 4 views
1

Ich benutze eine Menge von Onclick Ereignisse auf Schaltflächen in meiner HTML-Seiten normalerweise nach diesem Muster:Cordova/Berühren Onclick Ereignisse gibt

<button onclick="myFunction(this)"></button> 

Einige arbeiten, Somedon't, und ich kann nicht erklären, warum.

Diese Arbeit:

<div> 
    <button class="static" onclick="myFunction('add');" style="">zzzzzzzzzzz</button> 
    <button class="static" onclick="myFunction('res');" style="">zzzzzzzzzzz</button> 
    <button class="static" onclick="myFunction('set');" style="">zzzzzzzzzzz</button> 
</div> 

Diese nicht:

<center> 
    <button onclick="newEdit(this)" class="pop_opt" style="height: 35px;">Edit</button> 
    <hr/> 
    <button onclick="newConfirm(this);" class="pop_opt" style="height: 35px;">Delete</button> 
    <hr/> 
    <button onclick="defaultPopup(this, '')" class="pop_opt" style="height: 35px;">Cancel</button> 
</center> 

Die einzigen Unterschiede, die ich sehen sind:

  1. Die ersten Tasten die ersten klickbare Elemente sind (sie sind nur anklickbare Elemente im Bereich).
  2. Die anderen Schaltflächen sind anklickbare Elemente über einem anderen anklickbaren Element (und wenn die Schaltflächen angeklickt werden, sollte normalerweise das übergeordnete Klickereignis abgelehnt werden).

Beachten Sie, dass es perfekt in der Desktop-Browser arbeiten, aber nur Probleme passen, wenn wir es in einer App verwenden (ich nur mit Cordova getestet)

+0

Verwendung Antippereignis http://www.w3schools.com/jquerymobile/jquerymobile_events_touch.asp –

+0

Sie haben diese Ereignisse in bereites Gerät Funktionen –

+0

aber warum einige Arbeit und einige andere nicht zu binden? –

Antwort

0

Endlich konnte ich dieses Problem lösen, indem Sie einfach das HTML-Ereignis zu ändern onclick zu onmousedown & ontouchend

Verwandte Themen