Partage
  • Partager sur Facebook
  • Partager sur Twitter

alert + proprietes css

Sujet résolu
    27 octobre 2008 à 15:16:20

    Bonjour, je suis en train de faire le TP "WebOS" et pour debugger, je voudrais afficher certaines proprietes de ma fenetre.

    Je fais donc un :
    var frame = document.getElementById("mafenetre");
    frame.style.width = 600px;
    
    alert(frame.style.width);
    


    Mais dans ma popup rien ne s'affiche. Pourriez vous me dire pourquoi?
    • Partager sur Facebook
    • Partager sur Twitter
      27 octobre 2008 à 15:38:06

      Essaie plutôt :

      var frame = document.getElementById("mafenetre");
      frame.style.width = 600px;
      
      alert(frame);
      


      si tu veut que ca affiche le contenu de ta variable frame, sinon je ne voit pas qu'est-ce que tu veut faire !

      Bonne continuation !
      • Partager sur Facebook
      • Partager sur Twitter
        27 octobre 2008 à 15:55:44

        Commence par mettre des ' ' autours du 600px, pour voir :-°
        • Partager sur Facebook
        • Partager sur Twitter
          27 octobre 2008 à 16:46:08

          flash > Ce que je veux c'est afficher une propriete css, et frame est un node, donc ca me sert a rien de l'afficher.

          Elias > Deja fait (je l'ai oublié dans le code) mais ca ne change rien.
          • Partager sur Facebook
          • Partager sur Twitter
            27 octobre 2008 à 16:54:34

            Le problème doit venir d'ailleurs parce que sur une page ne comprenant rien d'autre que cela :
            <div id="mafenetre">test</div>
            
            <script language="javascript">
            var frame = document.getElementById("mafenetre");
            frame.style.width = '600px';
            alert(frame.style.width);
            </script>
            

            L'alert m'affiche bien "600px".

            Note : pour débuguer il est parfois plus facile de passer par un champs input au lieu d'alert, ça permet de ne pas interrompre le processus observé. Tu ajoutes un input de type text quelque part dans ta page, et tu y balances les valeurs que tu veux surveiller.
            • Partager sur Facebook
            • Partager sur Twitter
              27 octobre 2008 à 17:27:21

              Bon en fait non ca ne marche pas, j'ai un autre probleme:

              J'ai en fait dans mon noeud mafenetre des proprietes CSS situees dans un fichier css, et la je voudrais par exemple augmenter la taille width de 10 pixels.

              Donc je fais var w = frame.style.width;
              w = w.substring(0, w.length - 2); // Pour enlever le px;
              w += 10;
              frame.style.width = w + "px";

              Et bien sur ca ne marche pas, et la encore quand je veux afficher w j'ai rien. Est ce que JS ne voit que ce qui est dans element.style et pas dans les css? Comment faire sinon?
              • Partager sur Facebook
              • Partager sur Twitter
                27 octobre 2008 à 18:01:38

                Attention, en javascript, contrairement au PHP, on ne peut pas joyeusement une string comme un int :p
                var w = frame.style.width.replace(/px/, ''); //On enleve "px"
                w = parseInt(w); //On transforme en int
                w += 10; //On ajoute 10
                
                • Partager sur Facebook
                • Partager sur Twitter
                  27 octobre 2008 à 18:13:35

                  Merci Elias. J'ai résolu mon probleme de lui même de quelque chose qui n'est malheureusment pas dans les tutos JS (enfin ceux parlant de la syntaxe): Pour acceder au style d'un element quand celui ci n'est pas defini dans l'attribut style, on utilise

                  "element.currentStyle " pour IE et
                  "window.getComputedStyle(element, null)" pour FireFox et Opera.

                  C'est pour ca que je n'arrivais pas à accéder à width vu que celle ci etait définie dans le css.

                  Si vous voulez mettre ca quelque part pour vous en souvenir... En attendant mon probleme est résolu.
                  • Partager sur Facebook
                  • Partager sur Twitter

                  alert + proprietes css

                  × 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