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 :

[className] Accepte plusieurs classes ?


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut [className] Accepte plusieurs classes ?
    Bonjour à tous,

    J'aurais juste voulu savoir si l'attribut className acceptait plusieurs classes.

    ex. :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById(id).className = "classe1 classe2";
    Car dans mon cas, il ne semble pas l'accepter.

    Pouvez-vous me confirmer cela ?

    Merci d'avance

  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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    Ben si ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <style type='text/css'>
    .red{background-color:red;}
    .green {color:green;}
    </style>
     
    </head>
     
    <body>
    <div onmouseover="this.className='red green'">test</div>
    </body>
    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 éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Le soucis est que ma manipulation de classe s'effectue dans une fonction Javascript c'est pourquoi ma demande est spécifique sur l'attribut className, celui-ci accepte-t-il plusieurs classes ?

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    relis bien la réponse de SpaceFrog

    A+

  5. #5
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Autant pour moi, j'ai lu trop vite

    Sauriez-vous me dire pourquoi le deuxième style (classe2) de cette ligne n'est pas traité ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById(id).className = 'classe1 classe2';

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    D'après ce que tu montres comme code, il est impossible de te répondre...
    Peut-être y a-t-il des conflits de css, d'héritage ou autre
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    id = ?
    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 !

  8. #8
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    id est l'id de l'élément à manipuler (cette modification de la classe intervient dans une fonction à laquelle est passée l'argument id)

  9. #9
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    tu as donc un autre élément perturbateur, tu peux nous montrer les deux classes incriminé ?

  10. #10
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Voici une partie de la fonction (initialisant les classes) :

    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
     
    switch(type) {
    	case 'j' :
    		document.getElementById(id + "_j").className = 'congeSelectionne bordureGaucheConge';
    		document.getElementById(id + "_dj").className = 'congeSelectionne bordureDroiteConge';
    		break;
    	case 'jo' :
    		document.getElementById(id + "_j").className = 'congeOffert bordureGaucheConge';
    		document.getElementById(id + "_dj").className = 'congeOffert bordureDroiteConge';
    		break;
    	case 'dj' :
    		document.getElementById(id + "_j").className = 'jourSaisissable';
    		document.getElementById(id + "_dj").className = 'congeSelectionne bordureGaucheConge bordureDroiteConge';
    		break;
    	default :
    		alert("Erreur (objet 'type' incorrect).");
    }
    et les styles associés :

    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
     
    td.jourSaisissable {
    	background-color: transparent;
    }
     
    td.congeSelectionne {
    	background-color:#FFFFFF;
    }
     
    td.congeOffert {
    	background-color:#CCCCCC;
    }
     
    td.bordureGaucheConge {
    	border-left: 1px dotted #000000;
    }
     
    td.bordureDroiteConge {
    	border-right: 1px dotted #000000;
    }

  11. #11
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    normal ....
    tes classe n'affectent que les éléments qui se trouvent dans un td, enlève le td devant le nom de tes classes

  12. #12
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Pourtant ce sont bien les classes d'un élément td que je manipule.

    De plus les styles, congeSelectionne, congeOffert et jourSaisissable fonctionnent bien.

    J'ai quand même essayé d'enlever les td mais les styles ne s'appliquent toujours pas.

  13. #13
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Type n'a pas un style="" défini dans le tag HTML ?
    Si oui il serait prioritaire sur les class ...

    A+

  14. #14
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    +1 ebzz

  15. #15
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    type n'est pas l'id d'un élément html mais juste une variable permettant d'identifier le cas à traiter.

  16. #16
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    on peut voir le html ??? les balises en question avec leur id et tout ...

    sinon rajoute au bout du className
    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 !

  17. #17
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Pas de soucis, voici une partie du code interprété (PHP) :
    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    <tr>
    <td id="2009-1-1_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-1_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-2_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-2_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td id="2009-1-5_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-5_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-6_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-6_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-7_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-7_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-8_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-8_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-9_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-9_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td id="2009-1-12_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-12_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-13_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-13_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-14_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-14_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-15_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-15_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-16_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-16_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td id="2009-1-19_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-19_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-20_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-20_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-21_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-21_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-22_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-22_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-23_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-23_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    <td id="2009-1-26_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-26_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-27_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-27_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-28_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-28_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-29_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-29_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-30_dj" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td id="2009-1-30_j" width="8" class="jourSaisissable" style="cursor:pointer" onclick="selecConge(this.id,'')">&nbsp;</td>
    <td width="16" colspan="2" class="weekEnd">&nbsp;</td>
    </tr>

  18. #18
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    et donc tu passes
    id="2009-1-1" par exemple ?
    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 !

  19. #19
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Oui, exactement.

  20. #20
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    heu ben tu passes this.id en param de selecConges

    a mon avis il y a emmèlage de crayons entre type et id ...
    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 !

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [MFC] objet commun a plusieurs classes
    Par Info42 dans le forum MFC
    Réponses: 4
    Dernier message: 11/05/2006, 18h52
  2. Heritage de plusieur classes
    Par JiJiJaco dans le forum Langage
    Réponses: 10
    Dernier message: 26/12/2005, 19h12
  3. [css] plusieurs classes appellées? comment ça marche
    Par luta dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 09/11/2005, 00h20
  4. Utilisation de variables dans plusieurs classes
    Par dedeloux dans le forum Langage
    Réponses: 3
    Dernier message: 20/07/2005, 17h25
  5. [Servlet] Utilisation de plusieurs classes
    Par hedgehog dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 04/05/2005, 09h43

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