Jquery: si mouseleave = vrai alors le FAIRE
Simple question, comment pourrais-je accomplir cette fonctionnalité en Jquery:
Tester si le curseur de la souris sur .myBox
if ($(".myBox").mouseleave = true) {
DO SOMETHING
} else {something else}
OU
if ($(".myBox").mouseover = false) {
DO SOMETHING
} else {Something else}
REMARQUE: je cherche une instruction if
OriginalL'auteur android.nick | 2011-01-28
Vous devez vous connecter pour publier un commentaire.
jQuery fournit la
is
méthode de vérification des conditions à l'égard d'un objet jQuery. Dans votre cas, vous pouvez vérifier pour la:hover
CSS pseudo classe:Havre un coup d'oeil à cette démo, essayez de cliquer sur le bouton (qui sera d'alerte
true
) et la surbrillance et appuyer sur la touche enter sur le bouton (sans la souris, il sera de retourfalse
).DÉMO: http://jsfiddle.net/marcuswhybrow/LL5JD/
Testé dans Chrome, juste testé dans FF et ça ne marchait pas... enquête.
Il semble y avoir un bug dans jQuery:
uncaught exception: Syntax error, unrecognized expression: Syntax error, unrecognized expression: hover
yep. je reçois le même aussi.. concept Intéressant mais ..
avez-vous signalé le bug? parce que ce que vous avez fourni est exactement ce que je voulais, gahhhh bugs!
OriginalL'auteur Marcus Whybrow
Prendre un coup d'oeil à jQuery Souris Sur
Voici un exemple, l'ajout d'une bordure à une image lors du survol, et de l'enlever au bout de x temps si sa a pas été re-tournait: Le voir travailler ici
OriginalL'auteur Scoobler
C'est vrai, $('.myBox').is(':hover') utilisé avec jQuery 1.5.1 jette l'erreur, mais dans mes tests uniquement dans le Navigateur Opera (11.01):
Uncaught exception: erreur de Syntaxe, non reconnu expression: hover
Une solution de contournement est d'utiliser un niée expression: $('.myBox').est (pas(:hover)')
Qui a bien fonctionné pendant mes tests dans Opera 11, FF4, IE7, Chrome 5.
OriginalL'auteur Oliver A. Keith
Utilisation .hover() http://api.jquery.com/hover/
OriginalL'auteur Crayon Violent
.hover
avec un si parce que vous êtes aux prises avec google chrome, la saisie semi-automatique dans une fenêtre pop-up formulaire de connexion. Si vous utilisez.hover
vous pourrez sûrement obtenir les comportements indésirables, au lieu de cela lorsque vous utilisez$("#foo").mouseout(function(){#The Code},function(){});
vous n'avez pas de problèmes à tous. Je vous remercie.Bien dit @Luis comme pour chrome remplissage automatique des fiascos, quelqu'un a dit que l'habillage du texte entrées dans
<form>
les balises de l'arrêter. Je l'ai essayé et ça marche!!!OriginalL'auteur TheVillageIdiot
Cela a fonctionné pour moi:
OriginalL'auteur Robert Schmidt
utiliser ceci: http://plugins.jquery.com/project/enterleave-events
mouseenter
etmouseleave
événements ? ils sont pris en charge en interne avecbind('mouseenter mouseleave', ...
OriginalL'auteur Syl
Loi sur la
mouseenter
etmouseleave
événements.Ou utiliser le
hover
qui peuvent gérer chacun d'eux..Exemple à http://www.jsfiddle.net/gaby/ECYD4/
Voir la mise à jour à ma question par un exemple comment adapter Gaby code pour faire ce que vous voulez. jsfiddle.net/Scoobler/ThLqx/12
OriginalL'auteur Gabriele Petrioli