Je travaille sur un site web mobile, qui doit travailler sur une variété de dispositifs. L'un de me donner un mal de tête à l'heure actuelle sont de BlackBerry.
Nous avons besoin de soutenir à la fois les clics du clavier ainsi que les événements tactiles.
Idéalement, je voudrais simplement utiliser:
$thing.click(function(){...})
mais le problème, nous sommes en cours d'exécution en est que certains de ces appareils blackberry ont une très ennuyeux délai entre le moment de l'impulsion de déclenchement d'un clic.
Le remède est d'utiliser à la place évènements touchstart:
$thing.bind('touchstart', function(event){...})
Mais comment dois-je aller sur la liaison de ces deux événements, mais seulement de tir? J'ai encore besoin de l'événement click pour les claviers, mais bien sûr, ne veulent pas l'événement click de tir si je suis en utilisant un périphérique tactile.
Une question bonus: Est-il de toute façon pour ce faire, et en outre accueillir les navigateurs qui n'ont même pas un évènements touchstart événement? Dans cette recherche, il ressemble à BlackBerry os 5 ne prend pas en charge évènements touchstart permettra également besoin de s'appuyer sur les événements de clic pour que le navigateur.
ADDENDUM:
Peut-être une façon plus globale la question est:
Avec jQuery, est-il possible/recommandé pour traiter à la fois les interactions tactiles et les interactions de la souris avec les mêmes raccourcis clavier?
Idéalement, la réponse est oui. Sinon, j'ai quelques options:
1) Nous utilisons WURFL pour obtenir des informations sur l'appareil afin de pouvoir créer nos propres de la matrice de périphériques. Selon l'appareil, nous allons utiliser les évènements touchstart OU cliquez sur.
2) Détecter pour la prise en charge tactile dans le navigateur via JS (j'ai besoin de faire plus de recherche sur ce point, mais il semble que c'est faisable).
Cependant, ce qui laisse tout de même un problème: que faire sur les périphériques qui prennent en charge les DEUX. Certains des téléphones nous (à savoir les Nokias et Mûres) ont tous les deux écrans tactiles et claviers. Donc, ce genre de me prend cercle complet à la question d'origine...est-il un moyen de permettre aux deux à la fois, en quelque sorte?