touchend propriétés de l'événement
Si je prends tous les touchend événements à partir d'appareils mobiles avec:
$(document.body).bind('touchend', function (e) {
var touch = e.touches[0]; //doesnt work
...
Ai besoin de le toucher.screenX, touch.screenY, touch.clientX et le toucher.clientX de l'e paramètre. Tous les exemples que j'ai vu suggèrent que l'e.touche sera une collection, et vous pouvez obtenir au contact de détails avec e.touches[0]
. Dans mes tests sur un ipad, e.touches
est toujours pas défini. Je n'utilise pas de plugins jquery.
Aussi essayé l'e.targetTouches, qui est également défini.
Peut aider quelqu'un?
Vous devez vous connecter pour publier un commentaire.
Effectivement, publié touche se trouve dans le changedTouches tableau, c'est à dire:
e.changedTouches[0].pageX //get the end x page coordinate for a released touch
Je pense que c'est un peu plus fiable que de passer par le originalEvent propriété.
Vous pouvez en lire plus sur changedTouches ici:
http://www.w3.org/TR/touch-events/#changedtouches-of-a-touchevent
La touche de la propriété est un TouchList objet. Vous pouvez voir le TouchList classe de référence ici.
Si vous surveillez sa longueur bien avec cet exemple de code sur le #journal de div:
vous obtiendrez 1 lors de l'exécution d'évènements touchstart et touchmove, un 0 lors de l'exécution de touchend. C'est pourquoi vous obtenez indéfini de
e.touches[0]
.