2010-03-17 10 views
3

J'ai quelques hover() Code JS:Comment créer une souris if() sur un élément dans Jquery?

$('.leftMenuProductWrapper').hover (
      function() { 



      }, 
      function() { 


    }); 

Dans la deuxième fonction, je besoin de quelque chose comme:

If ($("#leftMenuWrapper2").hasMouseover){ 
do this 
}else{ 
do that}; 

Je ne peux pas trouver de la documentation sur la façon de le faire.

EDIT:

Cela semble être une solution:

$('#leftMenuWrapper2').mouseenter(function(){ 
    mouseover = true; 
}).mouseleave(function(){ 
    mouseover = false; 
}); 

Et puis plus tard dans le code, y faire référence:

if(mouseover == false){ 
       doSomething 
       }; 
+0

Pouvez-vous clarifier; Cherchez-vous à effectuer une action spécifique quand quelqu'un déplace une souris de '$ ('. leftMenuProductWrapper')' et dans '$ ('# leftMenuWrapper2") '? – Dancrumb

+0

Aussi, pouvez-vous inclure un exemple de base du DOM sur lequel ce code est conçu pour fonctionner? – Dancrumb

+0

@Jared, c'est exactement la solution que j'obtenais dans ma réponse. –

Répondre

12

à un très haut niveau, ce que vous voulez est quelque chose à:

  • Conserver une valeur booléenne.
  • Lorsque la souris déclenche un événement MouseOver, définissez le booléen sur true.
  • Lorsque la souris déclenche un événement MouseOut, définissez le booléen sur false.

Tout ce que vous avez à faire est de retourner la valeur booléenne pour obtenir la valeur hasMouseOver.

0

Je ne suis pas tout à fait sûr de ce que vous faites, mais il semble que vous l'attaquiez sous un mauvais angle.

Je suppose que vous avez plusieurs éléments à l'intérieur .leftMenuProductWrapper, dont un est #leftMenuWrapper2 ... Je suppose que les éléments que vous aimez êtes <div> s (mais vous pouvez modifier le code pour s'adapter si elles ne sont pas) . Essayez quelque chose comme ceci:

$('.leftMenuProductWrapper>div').hover(function(ev) { 
    if ($(this).id == 'leftMenuWrapper2') { 
     // do something with this one 
    } else { 
     // otherwise, do something else 
    } 
});