Sven Rautenberg: Layer erscheinen, verschwinden aber nicht mehr

Beitrag lesen

Moin!

Auch ich werd' dir nicht wahnsinnig viel weiterhelfen, aber einen dringenden Kommentar habe ich:

function menu (i)
{

switch(i)
{
  case 1:
   {
    if ((navigator.appName=='Netscape') && (navigator.appVersion.charAt(0)<'5'))

Grausam, diese Browserabfrage. Wenn du wissen willst, wie du auf Layer zugreifen mußt, dann frage doch einfach alle relevanten Zugriffsobjekte auf Existenz ab - geht IMO schneller und schöner und ist außerdem nicht ganz so gräßlich fehlerbehaftet, sollte ein anderer Browser als Netscape 4 sich irrtümlich als ein solcher ausgeben (wie zum Beispiel Opera, wenn man will und es so einstellt).

Also stattdessen einfach
  if (document.layers)
und fertig ist der Lack. Das funktioniert dann nämlich nur im Netscape 4, und nicht auch noch in Netscape 3, 2 und 1 (wenngleich die nicht mehr so rasend häufig auftreten :) ).

Ansonsten gibts von mir nur die üblichen Fehlerbehebungs-Tipps:

1. Gibts Fehlermeldungen? Du weißt hoffentlich, wie man die zu Gesicht bekommt, oder? Die Abwesenheit einer Dialogbox bedeutet nicht, daß es keine Fehlermeldung gibt. Nimm Netscape (egal, ob 4, 6 oder 7) und dessen Javascript-Konsole zur Hilfe.

2. Baue Alert-Meldungen in den Code ein, um zu sehen, ob die Teile, die ausgeführt werden _sollen_, auch tatsächlich ausgeführt _werden_. Also insbesondere vor oder nach dem Verstecken-Teil sollte ein Alert stehen. Wenn eines von beiden oder beide nicht ausgeführt werden, hast du den Fehler eingekreist.

Im übrigen hilft es bei Fehlerfragen in diesem Forum wesentlich mehr, wenn du die fragliche Seite nicht komplett postest, sondern online stellst, damit man sie sich in Aktion ansehen kann. Und es hilft auch nicht, wenn du sie _fast_ komplett postest, aber dann doch ein paar Zeilen wegkürzt, weil da vielleicht der Fehler nicht drin ist. Entweder bei großen Seiten den Code radikal kürzen, gucken, ob er den Fehler immer noch produziert, und ihn dann hier posten, oder ungekürzt online stellen - das hilft, alles andere nicht.

- Sven Rautenberg