Partage
  • Partager sur Facebook
  • Partager sur Twitter

Afficher une balise secret

Fonctionne sous FF mais pas sous IE

Sujet résolu
    26 juillet 2009 à 23:24:38

    Bonjour à tous !
    Je suis confronté à un petit problème. En effet, je voudrais afficher/masquer une balise spoiler au click, j'ai donc créé une fonction JS toute simple, et elle ne marche pas sur IE8...
    La voici :
    function AfficheSecret(id_du_secret, lien) {
    	var leSecret = document.getElementById(id_du_secret);
    	if(leSecret.style.display == "none" || leSecret.style.display == "" || leSecret.style.display == null) {
    		leSecret.style.display = "block";	
    		lien.innerHTML = "<span class=\"clicksecret\">Cliquez pour masquer</span>";
    	}
    	else {
    		leSecret.style.display = "none";
    		lien.innerHTML = "<span class=\"clicksecret\">Cliquez pour afficher</span>";
    	}
    }
    

    Apparemment, cela viendrait du leSecret.style.display qui ne serait pas pris en compte, vu que le texte est bien remplacé...

    Merci de votre aide !
    • Partager sur Facebook
    • Partager sur Twitter
      26 juillet 2009 à 23:36:24

      Coucou

      il me semble que ton souci vienne d'une faute banale ...

      la ligne :
      if(leSecret.style.display == "none" || leSecret.style.display == "" || leSecret.style.display == null)
      

      Serai peut etre un peu mieu écrite comme ca :
      if((leSecret.style.display == "none") || (leSecret.style.display == "") || (leSecret.style.display == null))
      


      Ensuite je voudrai savoir si "lien" est bien écrit ici:
      lien.innerHTML
      

      L'écriture de ce genr de chaine étant plutot :

      document.getElementById(lien).innerHTML //si il s'agit d'un id ..
      

      car effectivement je ne voie pas a quoi sert "lien" ici

      Essaye déja ca et dit moi =)
      • Partager sur Facebook
      • Partager sur Twitter
        26 juillet 2009 à 23:48:33

        En fait, j'appelle ma fonction comme ceci :
        <a onclick="AfficheSecret('secret_mrecprvswb', this)" href="#secret_mrecprvswb">
        <span class="clicksecret">Cliquez pour afficher</span>
        </a>
        


        J'ai modifié ma fonction comme ceci, mais toujours le meme problème :
        function AfficheSecret(id_du_secret, lien) {
        	var leSecret = document.getElementById(id_du_secret);
        	if((leSecret.style.display == "none") || (leSecret.style.display == "") || (leSecret.style.display == null)) {
        		leSecret.style.display = "block";	
        		lien.innerHTML = "<span class=\"clicksecret\">Cliquez pour masquer</span>";
        	}
        	else {
        		leSecret.style.display = "none";
        		lien.innerHTML = "<span class=\"clicksecret\">Cliquez pour afficher</span>";
        	}
        }
        

        Edit : Ah, ca ne vient pas de là, ca vient du fait que je spécifies des height et des width vides dans mes images, donc, elles s'affichent pas, et comme y'a que ca dans le spoiler...
        • Partager sur Facebook
        • Partager sur Twitter

        Afficher une balise secret

        × 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