Standardverhalten Touch-Events unterdrücken – einfach ist anders
Kommentare

Wer mit JavaScript arbeitet, kennt und nutzt wahrscheinlich des Öfteren preventDefault(). Wie der Name schon sagt, wird damit die Standardaktion eines Events unterbunten – was manchmal durchaus sinnvoll

Wer mit JavaScript arbeitet, kennt und nutzt wahrscheinlich des Öfteren preventDefault(). Wie der Name schon sagt, wird damit die Standardaktion eines Events unterbunten – was manchmal durchaus sinnvoll sein kann. Peter-Paul Koch hat sich nun gefragt, ob das auch auf allen mobilen Devices mit Touch-Events funktioniert. Die Ergebnisse seiner Studie sind ernüchternd.

Insgesamt hat er touchstart und touchmove für fünf verschiedene Aktionen untersucht: tap, double tap, scroll, pinch-zoom und touchhold. Im Prinzip lassen sich die Ergebnisse schnell zusammenfassen:

It turns out that theory is sensible, and all major browsers obey theory. Tap, double tap, and touchhold depend only on the touchstart event, and are only prevented when you return false ontouchstart. So is the event cascade. Scroll and pinch-zoom depend on both touchstart and touchmove, and are therefore prevented when you return false on either event.

Wie gesagt, im Prinzip. Viele Browser haben kleinere bis mittelschwere Abweichungen vom Standard, die PPK in übersichtlichen Tabellen zusammengefasst hat: je eine für Touchmove und Touchstart. Und eine für Android 4, da die Browser auf Googles mobilen Betriebssystem je nach Build ein anderes Verhalten an den Tag legen.

Die Liste der getesteten Browser kann sich jedenfalls sehen lassen. Und das Thema sollte jeden interessieren, der sich mit Touch-Events auf mobilen Devices beschäftigt.

Aufmacherbild: Do not touch sign von Shutterstock / Urheberrecht: Arcady

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -