Partage
  • Partager sur Facebook
  • Partager sur Twitter

Petit prob avec mon if...

Sujet résolu
    5 juillet 2009 à 5:21:37

    Bonsoir tlm, j'espert que vous avez passer un beau 4 juillet

    Je debut dans le JS j'ai toute lue le tuto et je suis entrin de faire mes premier pas... mais je bug sur une affaire que jai de la difficulter a comprendre...

    Ce que je cherche a faire est simple... je cherche a faire que la background de mon menu change derriere la parti du lien de la page qui est afficher...

    Pour faire simple quand je suis sur index.php... et bien dans mon menu derriere le Mot Acceuil ses par exemple rouge et les auter parti du menu sont bleu...

    Voici ce que j'ai fais... mais sa ne marche pas alors...

    Dans la page index.php
    <script type="text/javascript">
    <!--
    var info = 'acceuil';
    
    //-->
    </script>
    ...
    


    Sa ses dans la balise <head>... Je creer cette variable qui va changer quand on va eter sur une autre page...


    Le menu est fais du sur le style de :

    <ul id="mainNav">
      <li id="accueil"><a title="Accueil" href="#">Accueil</a></li>
      <li id="nouvelles"><a title="Nouvelles" href="#">Nouvelles</a></li>
    ...
    

    Dans la page index.js - Cette page est include Apres la declaration de la variable

    if(info == 'acceuil') {
    document.getElementById("acceuil").background.src="mainMenuSelect.png";
    }
    
    else {
    document.getElementById("acceuil").background.src="mainMenu2.png";
    }


    Quand je load la page sa fais une erreur...tk dans le bas d'IE sa dit:
    Done, but with errors on page
    Et les fond ne change pas...

    Alors si quelqun ses ce que je fais de mal... car j'ai voulu faire quelque chose de simple... mais tk sa ne marche pas


    Merci de votre aide
    • Partager sur Facebook
    • Partager sur Twitter
      5 juillet 2009 à 5:24:39

      [cesuré car nullissime :-° ]
      • Partager sur Facebook
      • Partager sur Twitter
        5 juillet 2009 à 9:46:37

        Euh... plutôt même :

        document.getElementById("accueil").style.backgroundImage = "url('mainMenuSelect.png')";
        
        non ?
        • Partager sur Facebook
        • Partager sur Twitter
          5 juillet 2009 à 18:23:55

          Sa ne fonctionne toujours pas...

          var info = "acceuil";
          if (info == "acceuil") {
          
          document.getElementById("accueil").style.backgroundImage = "url('mainMenuSelect.png')";
          }
          
          else {
          document.getElementById("accueil").style.backgroundImage = "url('mainMenuSelect.png')";
          }
          



          Ses bien la qui a un probleme car quand je delete ce code il n'y a plus d'erreur...
          • Partager sur Facebook
          • Partager sur Twitter
            5 juillet 2009 à 18:45:58

            Il est possible que tu sois en train d'appeler un élément qui n'a pas encore été chargé...

            Essaie en entourant ton code avec ça :

            window.onload=function() {
            
            // Ici tu mets ton code
            
            };
            
            • Partager sur Facebook
            • Partager sur Twitter
              5 juillet 2009 à 18:49:59

              aaa et bien la tous fonctionne... tu peux m'expliquer pourquoi ???
              • Partager sur Facebook
              • Partager sur Twitter
                5 juillet 2009 à 19:53:13

                Quand tu mets du code dans le window.onload, il ne sera exécuté qu'une fois le chargement de la page terminé.

                Dans ton cas, le Javascript était exécuté avant même que l'élément "accueil" n'ait été chargé. Du coup, ça plantait ^^

                Utiliser l'événement onload permet de s'assurer que tout sera bien chargé quand on exécutera le javascript. ;)
                • Partager sur Facebook
                • Partager sur Twitter
                  5 juillet 2009 à 22:09:33

                  AAAA... et bien je te remerci vraiment beaucoup... avec ca je suis sur que ca va aller beaucoup mieux...

                  Merci encor et bonne fin de journee @+++
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Petit prob avec mon if...

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown