5 votes

Arrêter l'effet de survol après un clic

J'ai un problème assez simple dans jQuery, et je n'arrive pas à trouver une solution : J'ai un effet mouseOver et mouseOut, mais j'ai besoin d'une torsion, si le clic que garder cette boîte ouverte même si leur est un mouseOut.

Voici un exemple de ce que j'ai fait jusqu'à présent :

jsfiddle

Merci d'avance !

8voto

Jithin Points 2123
$(".rock").click(function() {
      $('.rock').unbind('mouseout');
});

Délier l'événement mouseout au clic de la pierre.

1voto

Beat Richartz Points 5569

Vous devez délier les événements, puis il reste ouvert pour toujours.

Je vous ai fait une mise à jour du fiddle ici

0voto

Utkanos Points 11665
$(".rock").click(function() {
     $(this).off('mouseout');

Si vous avez plusieurs événements mouseOut, vous pouvez les nommer et ne supprimer que celui qui est en question (le code ci-dessus supprime tous les événements mouseOut liés à l'icône .rock élément).

-1voto

Avinash Points 1765

Essayez ceci à la place

    $(".rock").hover(function() {
    $(".box_content.rock").stop().animate(
          {"height": "100px"},
          "normal");
    $(".box.rock").stop().animate(
          {"height": "140px"},
          "normal");
    $(".hide.rock").removeClass("hide").addClass("show");
    })

    $('.box_content.rock').click(function(){    
    $('.box_content.rock').unbind("hover");
    });

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X