FireFox, évenements et designMode
hibou57
Messages postés
132
Statut
Membre
-
Saray -
Saray -
Alut, aluminium
Je suis à face à un comportement étrange de FireFox avec les IFRAME en designMode : les gestionnaires d'événement ne semblent pas se déclencher.
Par exemple, sans designMode, je met en place un gestionnaire d'événement associé aux cliques de la souris sur l'IFRAME. Je teste, ça fonctionne. Mais si je met ensuit l'IFRAME en desig mode, alors plus aucun événement n'est généré alors que sous Opera et Safari les événements sont toujours déclenchés.
Est-ce que FireFox ne génére pas les événements utilisateur avec les IFRAME en designMode ?
Shoukran lik
Je suis à face à un comportement étrange de FireFox avec les IFRAME en designMode : les gestionnaires d'événement ne semblent pas se déclencher.
Par exemple, sans designMode, je met en place un gestionnaire d'événement associé aux cliques de la souris sur l'IFRAME. Je teste, ça fonctionne. Mais si je met ensuit l'IFRAME en desig mode, alors plus aucun événement n'est généré alors que sous Opera et Safari les événements sont toujours déclenchés.
Est-ce que FireFox ne génére pas les événements utilisateur avec les IFRAME en designMode ?
Shoukran lik
A voir également:
- FireFox, évenements et designMode
- Downloadhelper firefox - Télécharger - Outils pour navigateurs
- Mozilla firefox - Télécharger - Navigateurs
- Exporter favoris firefox - Guide
- Comment supprimer bing de firefox - Guide
- Mode lecture firefox - Guide
5 réponses
Encore une lacune de FireFox : il ne reconnais pas l'événement onclick, et ne reconnais que les évenements mousedown et mouseup. Une solution pourrait être de faire prendre en charge par onmouseup ce qui devrait normalement être pris en charge par l'événement click.
Mais cela n'est pas sans poser de problème, car imaginons un bouton fait maison, vous cliquez dessus sans relever le bouton de la souris, vous quittez le bouton en bougeant la souris, vous relevez le bouton de la souris, et là, le bouton ne recevra jamais de mouseup ! On voit la conscéquence de la confusion que FireFox fait entre onmouseup et onclick C'est un exemple.... et en règle générale c'est contraire aux conventions des interfaces utilisateurs.
Note: ce problème se pose même en dehors de designMode.
Je trouve que FireFox posent beaucoup de problèmes d'interface utilsateur.
Y at-il des spécialistes de FireFox dans l'assemblée ?
Mais cela n'est pas sans poser de problème, car imaginons un bouton fait maison, vous cliquez dessus sans relever le bouton de la souris, vous quittez le bouton en bougeant la souris, vous relevez le bouton de la souris, et là, le bouton ne recevra jamais de mouseup ! On voit la conscéquence de la confusion que FireFox fait entre onmouseup et onclick C'est un exemple.... et en règle générale c'est contraire aux conventions des interfaces utilisateurs.
Note: ce problème se pose même en dehors de designMode.
Je trouve que FireFox posent beaucoup de problèmes d'interface utilsateur.
Y at-il des spécialistes de FireFox dans l'assemblée ?
Ah :) J'ai trouvé :)
Il ne faut pas utiliser la méthode du genre element.onclick = ...., mais passer par addEventListener (en tous cas sous FireFox)
Il ne faut pas utiliser la méthode du genre element.onclick = ...., mais passer par addEventListener (en tous cas sous FireFox)
Ce qui est quand-même étrange, c'est que mouseup fonctionne, mais keyup, keydown et keypress ne fonctionne pas.
Quelqu'un(e) connais la liste des événement reconnu par FireFox ? Il ne reconnais pas les keydown, keypress ?
Quelqu'un(e) connais la liste des événement reconnu par FireFox ? Il ne reconnais pas les keydown, keypress ?
Beh oui, ça se confirme : tout les navigateurs (IE6, IE7, Safari, Opera) reconnaissent keydown, keyup et keypress dans un IFRAME en designMode.... sauf FifeFox qui ne reconnais que mousedown et mouseup :-/
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Sous Firefox il faut affecter l'événement keyup au contentWindow,
exemple : document.getElementById('monIFrame').contentWindow.addEventListener('keyup',maFonction,false);
Saray HACH
http://ww38.fractalweb.fr/
Sous Firefox il faut affecter l'événement keyup au contentWindow,
exemple : document.getElementById('monIFrame').contentWindow.addEventListener('keyup',maFonction,false);
Saray HACH
http://ww38.fractalweb.fr/