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 :

Evenement sur une div qui ne fonctionne pas


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2012
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Evenement sur une div qui ne fonctionne pas
    Boujour a tous,

    Voila mon problème, j'aimerai changer la classe d'une div lorsque je clique dessus tout en changeant une autre.

    Un petit bout de code sera surement plus explicite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <div id="evenements">
        <div class="actif">
        </div>
        <div class="non_actif">
        </div>
        <div class="non_actif">
        </div>
    </div>
    Et voila mon code javascript:
    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
     
    window.addEventListener("load",initialiser,false);
     
    function initialiser() 
    {
    	var lesEvenements = document.getElementById("evenements").getElementsByTagName("div");
    	for (var i=0; i<lesEvenements.lenght; i++)
    	{
    		var unEvenement=lesEvenements[i];
    		unEvenement.addEventListener("click",changerEvenement,false);
    	}
    }
    //----------------------------------------------------------------------
    function changerEvenement()
    {
    	document.getElementByClassName("actif").className="non_actif";
    	this.className="actif";
    }
    Or il se trouve que lorsque je clique sur une des div, rien ne se passe :s.

    En vous remerciant par avance de m'éclaircir sur ce point

  2. #2
    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
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementByClassName("actif")
    dans la mesure où plusieurs éléments peuvent avoir le même nom de classe, ce n'est pas getElementByClassName() mais getElementsByClassName avec un "s" qui signifie que cette méthode renvoie une collection sur laquelle il faudra ensuite boucler.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2012
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Salut!

    Je te remercie pour ta réponse, en effet je n'avais pas vu ce petit détail mais hélas rien y fais :s

    Je n'ai pourtant aucune erreur de JS déclarées par firefox, ou bien même chrome mais ce script refuse de fonctionner! Le vilain!
    J'ai beau relire mon code dans tout les sens, mes yeux refusent de voir quelque-chose!
    Pour les plus courageux, je vous ai joint un lien contenant le zip contenant mon code avec le css, html et js(juste le nécéssaire pas tout hein ^^).
    http://www.terafiles.net/v-138163.html
    Je voudrai qu'au clique sur une div verte elle devienne rouge et l'autre (qui était rouge) redevienne verte (en passant par l'attribut class de mes balises HTML)

    En espérant que vous pourrez me sortir de cette impasse

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/05/2015, 08h34
  2. float sur div qui ne fonctionne pas
    Par stephane543 dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 13/03/2010, 21h26
  3. Probleme sur une requete qui ne fonctionne pas
    Par tralala2 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/08/2009, 10h05
  4. Masquage de div qui ne fonctionne pas sur IE
    Par Ziltoid dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 18/12/2007, 19h31

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