Mir ist aufgefallen, dass bei Touchscreens die Buttons nicht immer reagieren.
Das liegt wohl daran, dass in der templateengine.js bei jeder kleinsten Bewegung mit dem Finger die Aktion abgebrochen wird und versucht wird zu scrollen.
Ich habe eine kleine Überprüfung hinzugefügt, die die Aktion erst abbricht, wenn der Finger mehr als 5 Pixel bewegt wurde.
https://github.com/alltime84/CometVi...plateengine.js
Siehe Zeile 503 bis 611
oder hier:
Das liegt wohl daran, dass in der templateengine.js bei jeder kleinsten Bewegung mit dem Finger die Aktion abgebrochen wird und versucht wird zu scrollen.
Ich habe eine kleine Überprüfung hinzugefügt, die die Aktion erst abbricht, wenn der Finger mehr als 5 Pixel bewegt wurde.
https://github.com/alltime84/CometVi...plateengine.js
Siehe Zeile 503 bis 611
oder hier:
Code:
[B]var touchStartX = null; var touchStartY = null;[/B] window.addEventListener( isTouchDevice ? 'touchstart' : 'mousedown', function( event ){ ... [B] touchobj = event.changedTouches[0]; touchStartX = parseInt(touchobj.clientX); touchStartY = parseInt(touchobj.clientY);[/B] ... } ... isTouchDevice && window.addEventListener( 'touchmove', function( event ){ ... [B]touchobj = event.changedTouches[0];[/B] if( !mouseEvent.alreadyCanceled [B]&& ((touchStartX + 5 < parseInt(touchobj.clientX) || touchStartX - 5 > parseInt(touchobj.clientX)) ||(touchStartY + 5 < parseInt(touchobj.clientY) || touchStartY - 5 > parseInt(touchobj.clientY))))[/B] { // cancel mouseEvent.alreadyCanceled = true; var actionFn = mouseEvent.widgetCreator.action; actionFn && actionFn.call( widget, widget.id, mouseEvent.actor, true ); } .. }
Kommentar