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

JavaScript Discussion :

Etat du style d'un element de ma page web [FAQ]


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Etat du style d'un element de ma page web
    Bonjour !

    Je souhaite connaitre l'état du style d'un element de ma page web, j'essaye avec :
    etat = eval(smenu).style.visibility;
    ou smenu est document.getElementById("monobjet")
    mais je n'en tire rien.

    pour le modifier, je fais un :
    eval(smenu).style.visibility = 'visible';
    et ca fonctionne.

    Merci de votre aide

    Eric

    modéré par denisC : ajout du tag résolu

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
       var el = document.getElementById('mon_id');
       alert(el);
       alert(el.style.visibility);
       el.style.visibility = 'hidden';
       alert(el.style.visibility);

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Merci Mr N,

    J'ai essayé tout ca mais je n'arrive toujours pas à connaitre le style courant de mon objet (HTMLTableElement) sur Firefox il est paramétré via une feuille de style CSS sur hidden.

    si je fais un
    monobjet.style.visibility = 'hidden';
    ou
    monobjet.style.visibility = 'visible';
    cela fonctionne bien et agit sur le style.

    Mais je voudrais récupérer le style dans une variable et je n'y arrive pas, je fais un :
    var etat = monobjet.style.visibility;
    Il ne récupère rien tant que je n'ai pas paramétré le style via Javascript.

    Merci

    Eric

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 69
    Points : 61
    Points
    61
    Par défaut
    bonjour eja1968

    Le comportement de js me paraît assez logique.

    la propriété doit avoir la valeur et cette classe agit sur la visibilité.

    en revanche la propiété
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monObjet.style.visibility
    est vide puisque tu n'agis que su .

    Je ne sais comment récupérer en DOM la définition d'une class (pour savoir si la propriété de la class est à )

    En revanche je te conseillle de te créer 2 class (une visible une invisible) et de tester le nom de la class.
    Tu peux aussi combiner les class

    css:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    maclass {(....) pas de définition de la propriété visibility}
    voir {visibility: normal}
    cache {visibility: hidden}
    js:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    //pour voir
    monobjet.className='maclass voir'
    //pour cahcer
    monobjet.className='maclass cache'
    [/code]

  5. #5
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par eja1968
    Il ne récupère rien tant que je n'ai pas paramétré le style via Javascript.
    C'est normal, comme expliqué dans le post de grav. Le style est celui que tu declares pour l'objet, pas celui qui est effectivement affiché.

    Pour acceder au style effectif de ton objet, il faut utiliser les méthodes suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    element.currentStyle //IE
    window.getComputedStyle(element, null) //FFx et Opera
    L'élément retourné par ces fonctions a tous les attributs de l'attribut style d'un élement.

    Tu peux donc faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    monobjetCptedStyle = monobjet.currentStyle || window.getComputedStyle(monobjet, null);
    alert(monobjetCptedStyle.visibility);
    Et normalement ça marche

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Je confirme ca marche !

    Bravo les gars

    Encore merci

    Eric

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

Discussions similaires

  1. parcourir les elements d'une page web
    Par yahya.romdhane.ensi dans le forum Général JavaScript
    Réponses: 19
    Dernier message: 11/04/2013, 15h49
  2. Recuperer le style d'un Element en Javascript
    Par systemofaxav dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 01/06/2006, 14h08
  3. Appliquer deux styles a un element
    Par fofovi72 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 08/02/2006, 21h32
  4. changer le style d'un element
    Par localhost dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 01/02/2006, 14h03

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