Comprend les Événements Tactiles clientX/Y défilement ou pas?
J'essaie de toucher les coordonnées sont relatives à la fenêtre d'affichage de navigateur d'événements tactiles (comme évènements touchstart). J'ai essayé de les obtenir à partir de clientX/Y des propriétés, mais les deux en fait les valeurs de retour, y compris le défilement.
C'est contre spec, comme il est dit clientX/Y retourner coordonnées sans défilement.
- J'ai essayé ajout/suppression d'une balise meta "viewport" - sans succès.
- Je l'ai testé en iOS 4.3 pour iPhone et Fennec de nuit - à la fois les valeurs de retour avec défilement.
Ce que je fais mal?
Grâce
OriginalL'auteur kuvik | 2011-05-04
Vous devez vous connecter pour publier un commentaire.
Vous ne faites rien de mal. C'est un bug dans les anciennes versions de webkit qui se produisent lorsque la page défile. J'ai vu ce bug dans la version iOS4 et un autre bug sur Android 4.0.
J'ai trouvé un moyen de détecter les bugs et calculer les valeurs correctes. J'espère que cela peut être utile pour les autres:
Cette fonction doit être appelée pour chaque contact dans l'événement.touche de tableau.
OriginalL'auteur gregers
Essayer cette
Remarque que c'est toujours un événement.touche même si vous définissez votre événement comme celui-ci (à l'aide de jquery ici)
;
La Guide de Safari fournit plus de détails
Vous avez raison, semble comme un bug. Vous pourriez hack autour d'elle en compensant le défilement de la page
(event.targetTouches[0].screenY - $(window).scrollTop() )
e.originalEvent.touche[0].clientY est de travailler pour moi
OriginalL'auteur Thomas Brasington