semi: ebene ein/ausblenden

Hallo,
Ich habe hier eine Anfängerfrage.
Ich möchte ganz einfach eine Ebene "onClick" ausblenden und ebenso wieder einblenden.
Ich habe eine kleine Browsererkennung geschrieben.
Mit neuen Browsern (Mac) funktioniert alles bestens. Ebenso mit nn4.7.
<verzweifel>Nur mit ie5 nicht. Sobald ich den nn4 Teil rausnehme, klappts auch mit dem ie5</verzweifel>.
Weiss jemand weiter?
Danke und einen schönen Abend
Semi

<html>
 <head>
  <title>DHTML</title>

<script language = "javascript" type = "text/javascript">
<!--

var dom, ie4, nn4;

if (document.getElementById)
 {
 var dom = true;
 document.write ("Ein moderner browser");

function verstecke()
  {
  document.getElementById("logo").style.visibility = "hidden";
  }

function zeige()
  {
  document.getElementById("logo").style.visibility = "visible";
  }
 }

if (document.all)
 {
 var ie4 = true;
 document.write ("ie4");

function verstecke()
  {
  logo.style.visibility="hidden";
  }

function zeige()
  {
  logo.style.visibility="visible";
  }
 }

if (document.layers)
 {
 var nn4 = true;
 document.write ("Ein Netscape 4");

function verstecke()
  {
  document.layers["logo"].visibility="hide";
  }

function zeige()
  {
  document.layers["logo"].visibility="show";
  }
 }

//-->
</script>

<style type="text/css">
   <!--
   #logo {
   position:absolute; left:100; top:170; width:250; height:123; }
   -->
   </style>

</head>
<body>

<div id = "logo" style = "position:absolute; top:120; left:120;">
<img src = "bilder/logo.jpg">
</div>

<a href="#" onclick = "verstecke();">Layer verstecken</a>

<a href="#" onclick = "zeige();">Layer zeigen</a>

</body>
</html>

  1. if (document.getElementById)
    if (document.all)

    Hallo Semi !!
    Ein 5er MSIE versteht Beides und hat deshalb einen Konflikt !!
    Damit's auch mit den neuen Internet Explorern läuft mußt die die Browserabfrage verfeinern . . .
    Mein Tip : Schmeiß die 4er ganz raus, verzichte auf den Browsercheck und nimm nur noch das DOM !!
    Ciao !!
    :-))

    1. Hallo und danke fŸr den Tip,Charlie,
      OK, also die Abfrage verfeinern...

      ÈÈ Mein Tip : Schmei§ die 4er ganz raus, verzichte auf den Browsercheck und nimm nur noch das DOM !!

      Das wŠre mir sehr sympatisch.
      Leider mache ich das ganze fŸr eine Abschlussarbeit. Ein Vorgabe ist der Netscape 4.7.
      Leider....

      GrŸsse
      Semi

      1. Hallo Semi !!

        Probier mal das :

        <html><head><title></title>
        <script language = "javascript">

        if (document.getElementById)
        {document.write ("Ein neuer Browser<br>")}
        else if (document.layers)
        {document.write ("Ein alter Navigator<br>")}
        else if (document.all)
        {document.write ("Ein alter Explorer<br>")}

        function verstecke()
        {
         if (document.getElementById)
         {  document.getElementById("logo").style.visibility = "hidden"; }

        else if (document.layers)
        { document.layers["logo"].visibility="hide";}

        else if (document.all)
        {logo.style.visibility="hidden"; }
        }

        function zeige()
        {
         if (document.getElementById)
        {document.getElementById("logo").style.visibility = "visible"; }
        else if (document.layers)
        {  document.layers["logo"].visibility="show"; }
        else if (document.all)
        { logo.style.visibility="visible"; }

        }
        </script>
         </head><body>
        <div id="logo" style="position:absolute; top:120; left:120"><img src="bild.gif"></div>
        <a href="#" onclick ="verstecke()">Layer verstecken</a><br>
        <a href="#" onclick ="zeige()">Layer zeigen</a>
        </body></html>

        1. Hallo Charlie,
          Erstmal Danke für Deine Mühe.
          Leider funktionierts so auch nicht.
          Weder im Mozilla, Safarie ie5 nn4 oder so.
          Das ist aber weiter auch nicht schlimm.
          Ich habe nämlich schon eine Browsererkennung mit PHP geschrieben und eingebaut.
          Und weil ich für die Projektarbeit noch eins draufsetzen wollte,
          dachte ich mir, das ich noch eine kleine Erkennung mit JavaScript mache.
          <abgabetermin>Aber ich werde jetzt halt auf die PHP Weiche zurückgreifen...</abgabetermin>.
          Danke, tschüss und einen schönen Abend
          Semi