Question de choix
Je continue actuellement le développement de mon script de compatibilité pour faire fonctionner le DOM Events dans la plupart des navigateurs. Le script fonctionne bien (je l’utilise sur webnaute.net d’ailleurs).
J’ai tenté dernièrement de simuler l’attribut detail
de l’objet
Event
sous MSIE. Dans le cas d’évènements liés à la souris et nécessitant
une pression du doigt, cet attribut a une valeur par défaut de 1 et
s’incrémente si l’évènement lié se produit de manière successive. Bref, si
l’utilisateur effectue deux click successifs, nous aurons pour le second click
Event.detail = 2
.
J’ai pu faire quelque chose de fonctionnel. Là où le bât blesse, c’est que
j’ai dù utiliser une valeur arbitraire comme intervalle de temps maximum entre
deux évènements pour décider si ces deux évènements se suivent (et donc
incrémenter Event.detail
) ou non.
Alors je suis confronté à un choix difficile : Dois-je me contenter de
ce que j’ai fait et donc garder cette valeur arbitraire (en sachant que
l’intervalle entre deux click successifs est généralement réglable dans les
préférences système) ? Ou bien faire marche arrière et me contenter de donner
une valeur correcte à Event.detail
pour un maximum de deux click
successifs (je pourrai alors m’en sortir avec l’évènement
dblclick) ?
Dans le premier cas, il restera un problème, car Opera semble refuser de
déclencher plus de deux click successifs. Il se produit un léger blocage avant
que cela refonctionne, mais trop tard pour considérer les évènements click
ultérieures comme liés aux deux précédents (Je n’ai fait le test que sur un élément BUTTON
pour l’instant).
Dans le second cas, la simulation de Event.detail
ne sera
parfaitement en accord avec la recommandation, laquelle ne donne pas de limite
de déclenchements successifs. J’admet cependant que dans la pratique, cele
n’est probablement pas utile en tout cas dans le cadre d’une page web, même une
interaction basée sur deux click successifs est très rare. Je ne l’ai vu qu’une
fois : C’était sur un wiki et le double click permettait d’accéder au
formulaire de modification de la page en cours.
J’attend vos avis nombreux et éclairés.