AFischer: Mal wieder Divs mit Netscape (nicht hauen bitte !)

Hallihallo,
leider habe ich mal wieder ein Problem mit diesen verdammten Divs, Javascript und Netscape. Ich habe ein kleines Demo Script geschrieben, mit dem mein Problem auftritt. Eigentlich denke ich das dieses Problem schon irgendwie im Archiv stehen müßte, aber ich habe jetzt 2 Tage lang alles durchsucht, was mit dem Thema zu tun hat und kann leider nichts finden was das Problem behebt. Nun aber mal "Butter bei die Fische":

Jedesmal wenn ich bei folgender Aktion über den Link gehe bekomme ich die altbekannte Meldung "window.document.RS24 has no properties", obwohl das div eine ID hat. Ich kann den "a href"-Bereich auch komplett in die Divs packen und bekomme trotzdem diesen Fehler. Das kann doch eigentlich nicht so schwer sein. Woran liegt das ? Für eine Hilfe wäre ich sehr, sehr dankbar !

...
<body>
<script language='JavaScript'>
function wechsel(inout)
{
 if (inout=="in")
   window.document.RS12.document.style.setAttribute ('visibility','hidden','false');
 else
   window.document.RS12.document.style.setAttribute('visibility','visible','false');
}
</script>
    <div id="RS12" style='visibility:visible;'>
    <a href='rubbeldiekatz.html' onmouseover="wechsel('in');" onmouseout="wechsel('out');">Dies ist ein Test</a>
  </div>
</body>
...

  1. hi!
    habe zwar keine Ahnung was das Script bewirken soll aber hier vielleicht die Lösung:
    <html>
    <body>
    <script language='JavaScript'>
    function hide(id)
    {
      if (document.layers)
      {
        if (document.layers[id])
          document.layers[id].visibility = "hidden";
      }
      else if (document.all)
        document.all[id].style.visibility = "hidden";
      else if (document.getElementById)
        document.getElementById(id).style.visibility = "hidden";
    }

    function show(id)
    {
      if (document.layers)
      {
        if (document.layers[id])
          document.layers[id].visibility = "visible";
      }
      else if (document.all)
        document.all[id].style.visibility = "visible";
      else if (document.getElementById)
        document.getElementById(id).style.visibility = "visible";
    }
    function wechsel(inout)
    {
     if (inout=="in")
       show("RS12");
     else
       hide("RS12");
    }
    </script>
        <div id="RS12" style='visibility:visible;'>
        <a href='rubbeldiekatz.html' onmouseover="wechsel('in');" onmouseout="wechsel('out');">Dies ist ein Test</a>
      </div>
    </body>
    </html>

    i hope i helped u!
    webmonk!

    1. MEIN RETTER ;)

      Manchmal hat man halt ein Brett vor dem Kopf und kommt nicht drauf. Gut das es das Forum wieder gibt.

      Nur zur Info: Das Ganze soll für ein Navigationssystem für einen eShop mit Warenwirtschaftsanbindung sein. Das Ganze schimpft sich dann "Finder" und kann man sich wie eine Matrix vorstellen, zusammengesetzt aus Kollektionsreihen und Warengruppenspalten. Wenn nun die Spaltenüberschrift angeklickt wird, werden alle Einträge der Spalte angezeigt (genauso bei den Reihen). Wird direkt in die Matrix geklickt, wird nur der spezielle Eintrag angezeigt. Daher das anzeigen/verstecken für die Matrixeinträge !

      Danke nochmal !

  2. Hi,

    <div id="RS12" style='visibility:visible;'>
        <a href='rubbeldiekatz.html' onmouseover="wechsel('in');" onmouseout="wechsel('out');">Dies ist ein Test</a>

    Ich habe mich schon längere Zeit nicht mehr mit Netscape-spezifischen Problemen auseinandergesetzt.
    Aber wenn es um Netscape =< 4.7x geht, könnte es daran liegen, dass ein <div> für Netscape erst dann zu einem gültigen <layer> wird, wenn es das  Style-Attribut "position" erhält. Versuch doch einfach mal <div id="RS12" style='position:absolute;top:0px;left:0px;visibility:visible;'>

    Vielleich hilft es..

    Grüße,
    Martin