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 :

Récupérer valeurs css d'un div


Sujet :

JavaScript

  1. #1
    Invité
    Invité(e)
    Par défaut Récupérer valeurs css d'un div
    Bonjour,

    La récupération des valeurs CSS d'un div me pose problème.

    DIV
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div class='yearContent' name='divAnnee'>blablabla</div>
    J'utilise name pour pouvoir récupérer plusieurs div!

    CSS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    .yearContent {
    	position: absolute;
    	top: 220px;
    	left: 200px;
    	width: 500px;
    	height: auto;
    	padding: 10px;
    	text-align: left;
    }
    JS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    window.onload = positionnerDiv;
     
    function positionnerDiv() {
    	var divsAnnee = document.getElementsByName("divAnnee");
    	for (var i=0; i<divsAnnee.length; i++) {
    		if (i != 0) {
    			alert(divsAnnee[i-1].style.width);
    		}
    	}
    }
    La fenêtre alert est tout le temps vide, pas la moindre valeur.

    Je me trompe quelque part?

    Merci.

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    La méthode .style en Javascript renvoie les valeurs inline de l'attribut style d'une balise, et non pas les styles déclarés dans une feuille de style.

    Tu peux toujours essayer de t'aider de ça:
    http://javascript.developpez.com/faq...=CSS#styleReel

    Au passage, l'attribut name d'un div n'est pas valide XHTML et n'est pas reconnu par IE.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Bisûnûrs
    Au passage, l'attribut name d'un div n'est pas valide XHTML et n'est pas reconnu par IE.
    Merci pour cette info, je vais changer ça!

    Pour ce qui est du reste, je suis fort ennuyé. Ce que j'essaie de faire c'est un genre d'explorateur de fichier (sauf que le contenu n'est pas des fichiers) avec une croix cliquable pour étendre chaque valeur et voir celles dessous. Point important : je ne connais pas le nombre d'éléments précédés d'une croix, c'est généré de façon dynamique.

    Exemple :
    + 2007
    + 2008
    + 2009
    Deviendrait une fois cliqué sur une croix :
    - 2007
    élément 1
    élément 2
    ...
    + 2008
    + 2009
    Je pensais faire des div de même classe positionnées de façon absolue (sans JS ils sont l'un sur l'autre), puis par JS récupérer la hauteur du précédent et l'ajouter à la propriété top pour le descendre dynamiquement.

    D'après ce que je vois je suis mal parti, aurais-tu quelques conseils de base, un fil directeur à me donner pour concevoir cela? Je ne veux pas de code tout fait, je préfère m'essayer à ce genre de pratique depuis 0.

    Merci.

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Ben, en CSS, si tu ne mets pas de hauteur définie à ton div, il va s'adapter en fonction du contenu.

    Donc, si tu fais :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <div>+ 2007</div>
    <div>
       Element1<br />
       Element2<br />
       Element3
    </div>
    <div>+ 2008</div>
    <div>
       Element1<br />
       Element2<br />
       Element3
    </div>
    Et que par un jeu d'identifiants tu masques/affiches que ceux que tu veux, tu n'as pas besoin de tes position:absolute et gérer la hauteur de chaque élément en JS.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Ouais je sais pas ce que j'ai été imaginer là, il faudrait que je fasse des pauses de temps en temps pour me remettre les idées en place! LOL

    Merci de m'avoir rafraîchit les idées!

    webrider

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

Discussions similaires

  1. Récupérer style css d'une div ou autre
    Par thomix68 dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 19/08/2013, 11h39
  2. Récupérer valeur parent-enfant d'une div cliquée
    Par lefebvresdesigns dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 28/01/2012, 11h47
  3. récupérer valeur x de la position de la div
    Par bruman dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/03/2009, 13h56
  4. Récupérer valeur chekbox et input dans un DIV
    Par axanta dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 12/11/2008, 15h51
  5. [HTML] Récupérer une valeur dans un tableau - DIV
    Par frtou dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 02/09/2008, 10h12

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