|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : mai 2004 Messages : 383 ![]() |
Salut,
J'ai un <input name="login" type="text"...> qui s'affiche dans une div et cette div doit disparaitre avec un onmouseout. Sauf que si j'ai déjà rentré plusieurs valeurs enregistrées dans le navigateur, ces valeurs apparaissent dans un menu déroulant et si le curseur va dans ce menu déroulant avec firefox on rentre dans le omouseout de la div qui contient cet <input> mais pas avec Chrome et résultat la <div> disparait avec l'input... Est-il possible de savoir si l'input est en train d'afficher une liste pour dans ce cas ne pas faire disparaitre la div contenant l'input ? Merci, Vincent. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
A vue de nez, ça ressemble à un problème de propagation / bouillonnement...
Tu aurais un petit lien ou un extrait éventuellement ? ^^
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : mai 2004 Messages : 383 ![]() |
|
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() danseur Inscription : août 2003 Messages : 2 667 ![]() |
nous manque aussi un ptit détail: le mouseover; il intervient quand?
(sinon j'ai bien tout lu et fait l'effort de comprendre) |
|
|
00
|
|
|
#5 | |
|
Membre habitué
![]() Inscription : mai 2004 Messages : 383 ![]() |
Citation:
Il y a un bouton "Connexion", lorsque l'utilisateur fait passer sa souris dessus, un onmouseover fait apparaitre une div qui permet de s'authentifier. Cette div qui est apparue contient les classiques input de type text "Nom d'utilisateur" et "Mot de passe" avec un bouton "Valider". Cette div disparait si la souris sort de cette <div d'authentification. (onmouseout) Voila une image pour essayer d'être plus clair: ![]() Dans cette image, la souris se trouve sur "vincent" et cela active le onmouseout de la div qui entraine sa disparition avec firefox. Avec Chrome, j'ai pas ce pb... On peut savoir si le curseur est dans la liste pour créer une exception et ne pas fermer cette div ? Merci, Vincent. |
|
|
|
00
|
|
|
#7 |
|
Membre habitué
![]() Inscription : mai 2004 Messages : 383 ![]() |
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Matilin TorreÉtudiant Inscription : juin 2010 Messages : 679 ![]() |
C'est une fonction pour « annuler » le focus. Si le navigateur est bien conçu, il réagira en masquant sa liste de suggestions. Mais c'est pas évident à tester, le comportement d'un navigateur est beaucoup moins prévisible que le comportement d'un script. Du coup je suis pas sûr de ce que j'affirme.
Sinon y'a un truc non standard mais qui marche bien partout : l'attribut autocomplete. J'ai vu ça sur des ENT et certains sites de banques. C'est pour dire au navigateur de ne pas utiliser de liste de suggestion.
__________________
Disposition de clavier ergonomique française : Bépo |
|
|
00
|
|
|
#9 | ||
![]() ![]() Inscription : janvier 2011 Messages : 2 944 ![]() |
Bonjour,
je ne rencontre le problème que sur IE (v7), lié à la gestion particulière de IE sur les options. Donc si ton mouseover/out et géré en CSS la tâche me parait bien compromise. Peut être faut-il revoir l'ergonomie de cette action. Nota : - blur est un événement déclenché sur la perte de focus d'un élément. Code :
|
||
|
|
00
|
|
|
#10 |
|
Membre expérimenté
![]() ![]() Duke Jikel Inscription : mai 2010 Messages : 340 ![]() |
Les popups de login qui ne s'affiche que si on fait un mouseover sur un lien est la pire chose qui puisse exister pour un utilisateur.
Surtout que dans ton cas, l'utilisateur doit utiliser sa souris pour sélectionner un choix dans une liste. Et ensuite cliquer sur le bouton. Et si l'utilisateur va trop vite (imagine un vieux ou un débutant à la souris, ou pire encore un simple utilisateur qui utilise une souris un peu défaillante), et bien l'utilisateur va s'y reprendre à 10 fois. Si je dis c'est c'est que moi même qui suis un utilisateur de la souris/trackpad,clitoris toshiba (j'appelais ça un clito Je te conseille FORTEMENT d'utiliser le "click" pour afficher cette popup, et pour la fermer, soit un bouton avec un "X" dedans, soit un click en dehors de la fenêtre ou les deux. Donc avant d'essayer de résoudre ton problème cherche plutôt à améliorer l'expérience utilisateur. |
|
|
10
|
|
|
#11 | ||
|
Membre Expert
![]() Matilin TorreÉtudiant Inscription : juin 2010 Messages : 679 ![]() |
Encore une autre idée : détecter le relatedTarget de l'évènement, et ne masquer la div que si cet élément détecté est le truc de fond (en bleu sur le screenshot).
Et pour IE : Code JS :
__________________
Disposition de clavier ergonomique française : Bépo |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com