schildi: Layer - Erkennung unter NN

Hallo,

Habe sonderbares Problem.

Ich habe mehrere benannte Ebenen in <div id="name"></div> tags im body.

Im head hab ich einen javascript bereich definiert, in dem ich die jeweiligen ebenen im voraus in ihrer position setzte.
(soll menue ergeben, das im ersten schritt automatisch nach wunsch und größe der bilder (->menuepunkte) die jeweils auf den ebenen liegen, gesetzt wird).

Funktioniert soweit auch, nur das der NN 4.7 immer eine ebene auf der seite nicht kennen zu scheint (-> Fehlermeldung, das angesprochenes layer objekt nicht existiere). Der NN 6.2 sagt dies:

Fehler: uncaught exception: [Exception... "Illegal operation on WrappedNative prototype object"  nsresult: "0x8057000c (NS_ERROR_XPC_BAD_OP_ON_WN_PROTO)"  location: "JS frame :: file:///E:/Mirror%20FILES/internet/websites/IMMOS%20AG/Website/de/htmldocs_de/frameset/menue_neu.htm :: setElements :: line 87"  data: no]

IE6 macht keine Probleme.

Wenn ich die ebenenreihenfolge auf der html seite verändere, dann kennt er immer eine andere ebene nicht.

Es scheint immer die letzte momentan angesprochene ebene auf der seite zu sein die er nicht einliest.

Kann das ein bug sein? Kann mir da jemand weiterhelfen?

  1. Nachtrag:

    Das NN 6.2 Problem war was anderes.

    Ich habe über

    meineVar = document.getElementById;

    den ersten Teil dieser zuweisung gespeichert.

    Verwendung wäre dann z.B.

    meineVar("ebene").style.left = "22"

    Dies hat IE un NN 4.7 auch gemacht.

    Nur der NN 6.2 nicht.

    Weiss zufällig jemand warum??

    1. Hallo,

      meineVar = document.getElementById;

      den ersten Teil dieser zuweisung gespeichert.

      Verwendung wäre dann z.B.

      meineVar("ebene").style.left = "22"

      Dies hat IE un NN 4.7 auch gemacht.

      Erstaunlich, Netscape 4.x kennt diese DOM-Methode nicht.

      Nur der NN 6.2 nicht.

      Weiss zufällig jemand warum??

      Es werden Einheiten erwartet und Netscape 6.x braucht aus unerfindlichen Gruenden eine nochmalige (absolute) Positionierung:

      meineVar("ebene").style.position = "absolute";
      meineVar("ebene").style.left = "22px";

      MfG, Thomas

      PS: meineVar() ist eigentlich eine Funktion, was aber an der Codeausfuehrung nichts aendert.

      1. DANKE !

        MfG, Thomas

        PS: meineVar() ist eigentlich eine Funktion, was aber an der Codeausfuehrung nichts aendert.