Problème avec Internet Explorer IE6 et IE7: Afficher Derouler - cacher

Problème avec Internet Explorer IE6 et IE7: Afficher Derouler - cacher - HTML/CSS - Programmation

Marsh Posté le 20-11-2008 à 17:36:53    

Bonjour
 
Je voudrais faire un truc (pas trop difficile?!?)
 
L'idée c'est de faire une page html, avec un lien quand on clique dessus, un div apparaisse en dessous contenant des détails sur le liens et que quand on réclic sur le meme lien, le detail disparait(caché).
 
J'ai cherché.
Et ça marche sur Firefox, mais pas sur IE7 ni sur Internet Explorer 6 : Erreur : objet attendu
 
SVP, quelqu'un pourrait-il m'eclairer: ce qu'il faut modifier?
Voici les codes : j'ai mis dans un seul fichier pour être facilement testable :
 
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title>TEST</title>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 <script>
  LAST_DIPSPLAYED_NODE = null;
  LAST_REF_NODE = null;
  function hideEveryNode(){
   var aElem = document.getElementsByTagName('ul');
   for each (elem in aElem){
    elem.setAttribute ? setDisplay(elem, 'none') : {};
   }
   LAST_DIPSPLAYED_NODE = elem;
  }
   
  function inverseDisplay(elem){
   return setDisplay(elem, (elem.style.display == 'none' ? 'block;' : 'none;'));
  }
   
  function setDisplay(elem, value){
   elem.setAttribute ? elem.setAttribute('style', 'display:' + value + ';') : {};
   return (value == 'none') ? null : elem;
  }
   
  function turnDisplay(ref_node){
   if(ref_node == LAST_REF_NODE)
    var this_node = LAST_DIPSPLAYED_NODE;
   else
    var this_node = ref_node.getElementsByTagName('ul')[0];
   inverseDisplay(this_node);
   if (LAST_DIPSPLAYED_NODE != this_node)
    setDisplay(LAST_DIPSPLAYED_NODE, 'none');
   LAST_DIPSPLAYED_NODE = this_node;
   LAST_REF_NODE = ref_node;
  }
 </script>
   
</head>
<body onload="hideEveryNode();">
<div id="global">
 
 <div class="block" onclick="turnDisplay(this);">
  <a href="#">D1 : Dossier1
  </a>
  <p><ul>
   <li>Fichier1a</li>
   <li>Fichier1b</li>
  </ul></p>
 </div>
 <div class="block" onclick="turnDisplay(this);">
  <a href="#">D2 : Dossier2
  </a>
  <p>
   <ul>
    <li>Fichier2a</li>
    <li>Fichier2b</li>
   </ul>
  </p>
 </div>
 
</div>  
</body>
</html>
 
 
Merci

Reply

Marsh Posté le 20-11-2008 à 17:36:53   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed