IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Passer du mouseover au clic


Sujet :

jQuery

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 55
    Par défaut Passer du mouseover au clic
    Bonjour à tous,

    Je reviens à la charge avec mon menu déroulant en javascript (et un peu de jQuery). Pour rappel, j'ai en haut des onglets qui font apparaître une div en dessous du menu. Grâce à jQuery, ces div se remplacent les unes les autres en glissant de façon fluide. Cf. capture ci-jointe pour plus de clarté.

    Tout fonctionne comme je le souhaitais initialement, c'est-à-dire que les div se succèdent en se basant sur le passage de la souris. Mais le résultat est un peu trop "speed" et sera sans doute déroutant pour les internautes. Je souhaite donc conserver le même principe de fonctionnement, mais en utilisant le clic.

    Un clic ouvrirait chaque div. Un nouveau clic (s'il a lieu) fermerait cette même div. Mais si la première div n'est pas refermée par un clic (ce qui devrait arriver le plus souvent), je voudrais obtenir la même animation qu'avec le mouseover actuel : que la nouvelle div remplace la précédente en "glissant dessus".

    J'ai donc tenté d'adapter mon code javascript en remplaçant mouseover par click, en faisant appel à des tests (if…else), mais rien à faire ça ne tourne pas. Le meilleur résultat auquel je suis arrivé est que les div apparaissent les unes au-dessous des autres, sans refermer la précédente.

    Mes notions de JS sont encore trop sommaires je le crains...
    Une bonne âme pour me mettre sur la piste ?…

    Mon code actuel (qui fonctionne en mouseover/mouseout) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $(document).ready(function() {						
    	$('.tabMenu > li:not(.blind, .lastblind)').mouseover(function(){
    		$(this).removeClass('close');  
    		$(this).addClass('open');
    		$('.boxBody div:eq(' + $('.tabMenu > li').index(this) + ')').stop(true,true).slideDown({duration:900, easing:'easeOutQuad'});
    });
     
    	$('.tabMenu > li:not(.blind, .lastblind)').mouseout(function() {
    		$(this).removeClass('open');  
        	$(this).addClass('close');
        	$('.boxBody div').stop(true,true).slideUp({duration:500, easing:'easeOutQuad'});
    });
    });
    Images attachées Images attachées  

Discussions similaires

  1. attendre clic bouton pour passer à l'action suivante
    Par gerard1638 dans le forum Langage
    Réponses: 3
    Dernier message: 10/10/2014, 10h41
  2. Comment se passer du clic dans une zone de liste
    Par fremarnat dans le forum IHM
    Réponses: 3
    Dernier message: 30/10/2013, 08h14
  3. KML, onSelect : le beurre (mouseover) et l'argent du beurre (clic)
    Par saxrub dans le forum IGN API Géoportail
    Réponses: 2
    Dernier message: 21/04/2013, 07h29
  4. Passer du Pascal à Delphi
    Par poppels dans le forum Langage
    Réponses: 7
    Dernier message: 30/08/2002, 21h07
  5. Passer en mode 800*600
    Par flavien tetart dans le forum Assembleur
    Réponses: 8
    Dernier message: 30/05/2002, 23h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo