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 :

question : mouvement d'un menu


Sujet :

jQuery

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut question : mouvement d'un menu
    Bonjour,

    j'ai un menu simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
            <ul id="navigation">
                <li class="home"><a href="#" id="link1"></a></li>
                <li class="photos"><a href="#" id="link2"></a></li>
    	    <li class="about"><a href="#" id="link3"></a></li>
                <li class="contact"><a href="#" id="link4"></a></li>
    	    <li class="rssfeed"><a href="#" id="link5"></a></li>
            </ul>

    quand on passe la souris (hover) sur un onglet du menu (c'est un menu vertical)
    alors l'onglet se déplace vers la droite, et lorsqu'on enlève la souris l'onglet se replace.

    jusque là tout va bien.

    ce que je souhaite c'est en plus, lors d'un clique sur un onglet du menu, faire en sorte que l'onglet reste déplacer a droite, et se replace lorsque je clique sur un autre onglet du menu (et ainsi de suite)


    voici mon code actuel pour le hover, je me doute bien qu'il faut utiliser la propriété click mais j'ai tout essayez, je n'y arrive pas.


    script jquery placé dans les balises <head>:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <script type="text/javascript">
      $.noConflict();
      jQuery(document).ready(function($) {
     
     
                    $('#navigation > li').hover(
                        function () {
                            $('a',$(this)).stop().animate({'marginLeft':'100px'},200);
                        },
                        function () {
                            $('a',$(this)).stop().animate({'marginLeft':'00px'},200);
                        }
                    );
      });
      </script>

    j'utilise noConflict car j'ai besoin d'un autre framework en parallèle.

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 937
    Points
    22 937
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    En espérant avoir bien compris !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <ul id="navigation">
    	<li class="home"><a href="#" id="link1" data-move="1">Home</a></li>
    	<li class="photos"><a href="#" id="link2" data-move="1">Photos</a></li>
    	<li class="about"><a href="#" id="link3" data-move="1">About</a></li>
    	<li class="contact"><a href="#" id="link4" data-move="1">Contact</a></li>
    	<li class="rssfeed"><a href="#" id="link5" data-move="1">RSSFeed</a></li>
    </ul>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    $("[id^='link']").click(function(){
    	$("[id^='link']").not(this).data("move", "1");
    	$(this).data("move", "0");
    	$('#navigation > li').mouseleave();
     
    	console.log( this.id );
    });
     
    $('#navigation > li').hover(
    	function () {
    		$('a', this).stop().animate({'marginLeft':'100px'},200);
    	},
    	function () {
    		if ( $('a', this).data("move") == 1 ){
    			$('a', this).stop().animate({'marginLeft':'0px'},200);
    		}
    	}
    );

Discussions similaires

  1. Mouvement d'un menu (floating)
    Par guillaume2vo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 02/12/2009, 19h16
  2. mouvement d'un menu
    Par guillaume2vo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/11/2009, 12h32
  3. Question sur le tuto menu déroulant
    Par TrexXx dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 05/05/2009, 23h19
  4. Réponses: 1
    Dernier message: 22/07/2008, 23h26
  5. [FLASH MX] Question menu deroulant
    Par celina5880 dans le forum Flash
    Réponses: 9
    Dernier message: 27/09/2005, 16h16

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