Jörg Dutschke: Warum funzt diese Seite unter NT aber nicht unter Win98

Hi Gemeinde!

Ich bin so langsam mit meinem (HTML-)Latein am Ende.
Einige von euch haben ja schon meinen steinigen Weg zur o.g. Website mitverfolgt. So richtig funzt sie aber noch immer nicht.
Im linken Navigationsframe ist ein Script enthalten, welches zu jedem Button ein Kontextmenü aufruft.
Unter Windows N/ + NC4.72/IE5 funzt alles wunderbar.
Unter Win98 + NC4.6 stürzt Netscape beim Kontextmenü der Produkte und Services ab. Der IE produziert dann wohl ne Fehlermeldung, daß ein Element kein Objekt ist ... (freie Übersetzung)

Warum?
Kommt Netscape da nicht mit HTML in einem dynamisch veränderten DIV klar?

Für sachdienliche Hinweise, die zur Ergreifung des Fehlers führen bin ich sehr dankbar :-)

Ciao
Jörg

  1. Hallo Jörg,

    Warum?
    Kommt Netscape da nicht mit HTML in einem dynamisch veränderten DIV klar?

    In komplizierten Strukturen insbesondere in Verbund mit Tabellen hat Netscape Probleme mit style-Angaben:

    z.B. dieser hier:

    <div id='Tip' class='tipp' style='position:absolute;width:180px;visibility:hidden;margin-left:3px'></div>
    <div id='Schattig' class='schatten' style='position:absolute;width:250px;visibility:hidden'></div>

    schreibe die Styles zentral in die css und lasse sie im Div weg.

    #Schattig {'position:absolute;width:250px;visibility:hidden;}
    #Tip {'position:absolute;width:180px;visibility:hidden;margin-left:3px;}

    zur Fehlermeldung im IE: der Div ist noch nicht da, wenn diese Meldung auftritt.
    Verhinderung:
    in deiner ersten Zeile im script-bereich der Seite: schonda=false;
    und im Body-Tag: onload="schonda=true;"
    und in deiner Funktion als erste Zeile
    if (parent.frames.framename.schonda==false) return;

    damit wird die Funktion abgebrochen und es erscheinen keine Fehlermeldungen mehr.

    Viele Grüße

    Antje

    PS: Ich werde das mal auf meinen Seiten mit aufnehmen bzw. gleich ins Script einbauen.

    1. Hallo Antje!

      schreibe die Styles zentral in die css und lasse sie im Div weg.

      #Schattig {'position:absolute;width:250px;visibility:hidden;}
      #Tip {'position:absolute;width:180px;visibility:hidden;margin-left:3px;}

      Ich habe es probiert: IE akzeptiert dies, Netscape moniert dann, daß parent.frames.wmain.Tip keine Eigenschaften besitzt.

      Sonnige Grüße
      Jörg

      1. Hallo Jörg

        Netscape moniert dann, daß parent.frames.wmain.Tip keine Eigenschaften besitzt.

        schreib mal statt parent..... lieber  parent.wmain.Tip (entspricht dem DOM)
        übrigens klappt das mit externen Style-Sheets auch im NS (siehe Link).

        Angeregt durch deine Anfragen habe ich mein Script umgeschrieben, Du findest den Code unter
        http:\\www.crosswinds.net\~dedeus\frameset.html
        Das Script läuft unter NT sowie unter Win 98 beim IE und NS (soweit haben das meine Tests ergeben).

        Der Code ist frei und jeder der möchte kann ihn herzlich gern kopieren.

        Viele Grüße

        Surfhead