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 :

Activer hierarchiquement les fonctions animate


Sujet :

jQuery

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut Activer hierarchiquement les fonctions animate
    Salut,
    je sais le titre a l'air compliqué mais en fait mon problème est tout simple je pense:

    J'ai 3 div associer a 3 événements.
    ce que je veux c'est que l'utilisateur ne puisse pas cliquer sur le div 2 ni le div 3 tant que le 1 na pas était cliquer.
    J' ai penser a .animate('disable') mais le problème est que la fonction n'est pas du tout exécutée.

    voici mon code, j'espère avoir était clair dans mes explications
    html:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <div id="right" class="block">Charge moi sur la remorque</div>
    <div id="right1" class="block1">Charge moi sur la remorque</div>
    <div id="right2" class="block2">Charge moi sur la remorque</div>
    <img  class="animation_truck" src="empty_truck.png" alt="camion animation" />
    js:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    $("#right").click(function(){
    $(".block").animate({ "top": "+=220px"}, {
    			    		complete:function(){
    						$(".block").stop().animate({"top": "+=0px"});
    						  $("#power").animate( { width:"50px" }, 1500);
    						}
    					});
    				});
     
    $("#right1").click(function(){
    $(".block1").animate({ "top": "+=220px"}, {	
    			    		complete:function(){
    						$(".block1").stop().animate({"top": "+=0px"});
    						$("#power").animate( { width:"250px" }, 1500);
    						return false;
    						}
    					});
    				});
     
    $("#right2").click(function(){
    $(".block2").animate({ "top": "+=220px"}, {	
    			    		complete:function(){
    						$(".block2").stop().animate({"top": "+=0px"});
    						$("#power").animate( { width:"450px" }, 1500);
    						return false;
    						}
    					});
    				});

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    rajoute un flag boolean et teste le pour lancer ou non l'animation ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut
    Salut SpaceFrog et merci pour ta reponse.
    seulement je ne vois pas concretement ce que tu veux entendre par boolean ?

    tu me suggere d,utiliser la fonction : val() != "" ?

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    je te suggère d'attribuer un flagboolean a l'objet lorsque tu l'as animé ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut
    peux tu me donner un exemple ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    clicked étant le flag boolean ...

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <script type='text/javascript'>
    $(document).ready( function(){
    	$("#foo").click(function(){
    	                           $(this).attr('clicked',true);
    	                           $(this).css({'background-color':'red'})
    	                           })
    	$("#bar").click(function(){
    	                           if (!$('#foo').attr('clicked')){alert("cliquez d'abord un")}
    	                           else{
    	                           	$(this).css({'background-color':'green'})
    	                            $(this).attr('clicked',true);
     
    	                           	}
    	                           })
       $("#toc").click(function(){
    	                           if (!$('#bar').attr('clicked')){alert("cliquez d'abord "+($('#foo').attr('clicked')?"deux":"un") )}
    	                           else{
    	                           	$(this).css({'background-color':'blue'})
    	                            $(this).attr('clicked',true);
     
    	                           	}
    	                           })
     
     
    });
    </script>
    <title>Nouvelle page 1</title>
    </head>
    <body>
    <div id="foo">un
    </div>
    <div id='bar'>
    deux
    </div>
    <div id='toc'>
    trois
    </div>
     
    </body>
    </html>
    ici je pointe avec les selecteur des id directement, mais on peut imaginer le faire avec les next ou eq etc ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut
    Genial j'ai pu m'en sortir grace a ta solution!
    merci beaucoup pour ton exemple

    voici le code sait on jamais si des debutants jquery passe par la:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    $("#right").click(function(){
    							$(this).attr('clicked',true);
    							$(".block").animate({ "top": "+=135px"}, {
    							complete:function(){
    							$(".block").stop().animate({"top": "+=0px"});
    							$("#power").animate( { width:"240px" }, 1500);
    							}
    							});
    						});
     
    $("#right1").click(function(){
    						$(this).attr('clicked',true);
    						if (!$('#right').attr('clicked')){alert("cliquez d'abord un")}
    	                    else{
    						$(".block1").animate({ "top": "+=135px"}, {	
    			    		complete:function(){
    						$(".block1").stop().animate({"top": "+=0px"});
    						$("#power").animate( { width:"100px" }, 1500);
    						return false;
    						}
    						});
    						};
    					});
     
    $("#right2").click(function(){
    						$(this).attr('clicked',true);
    						if (!$('#right1').attr('clicked')){alert("cliquez d'abord "+($('#right').attr('clicked')?"deux":"un") )}
    	                    else{	
    						$(".block2").animate({ "top": "+=135px"}, {
    			    		complete:function(){
    						$(".block2").stop().animate({"top": "+=0px"});
    						$("#power").animate( { width:"0px" }, 1500);
    						return false;
    						}
    						});
    						};
    					});

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment activer les fonctions "trier dans l'ordre" dans l'AutoFilter ?
    Par puresprit dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 08/03/2012, 16h42
  2. Activer les fonctions ftp
    Par -Neo- dans le forum Langage
    Réponses: 1
    Dernier message: 15/01/2009, 09h44
  3. [EasyPHP] Activer les fonctions LDAP sur EasyPHP 1.8
    Par gregfly26 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 24/10/2005, 16h13
  4. doc sur les fonctions
    Par masterfab dans le forum C
    Réponses: 18
    Dernier message: 23/06/2005, 17h55
  5. Réponses: 7
    Dernier message: 24/05/2003, 15h56

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