2010-12-26 5 views
1

J'ai des vignettes que j'anime une bordure sur une souris. J'utilise hover() pour affecter les fonctions lorsque document.ready() est appelée. Ce que je voudrais, c'est un moyen de désactiver cet effet d'animation sur l'image sur laquelle l'utilisateur a cliqué. Il a une classe différente. Donc, je prévoyais de faire cela en faisant en sorte que la fonction animée comprenne une vérification pour voir si le pouce en question avait cet autre cours. Sinon, continuez; si c'est le cas, ne faites rien. Mais pour ce faire, j'ai besoin de savoir quelle miniature (ils ont des ID uniques) a déclenché la fonction. Des idées?jQuery: quel élément a déclenché la fonction?

Merci!

Répondre

0

Vous pouvez faire un gestionnaire live qui exclut la classe en écrivant

$('selector:not(.someClass)').live({ 
    mouseenter: function() { 

    }, 
    mouseleave: function() { 

    } 
}); 
+0

En fait, tout ce qu'il fallait était un gestionnaire en direct sur la classe pour les pouces habituels, non choisis. Merci pour l'idée/l'inspiration! – Nathan

1

Vous pouvez obtenir l'élément target de l'événement, comme celui-ci:

$(".foo").hover(function(e) { 
    alert(e.target.id); 
    alert(e.target.tagName); 
    $(e.target).find(".blahblah").hide(); 
    // etc. 
}, function(e) { 
    ... 
}); 
+0

Bon à savoir! Merci. – Nathan

2
$('.thumbs').hover(function(){ 
    if ($(this).hasClass('clicked')) return; 
     //animate here 
}); 
Questions connexes