alex1981: Probs mit JS-Menü

Hi Leute...

Habe mir ein hübsches Menü gestrickt und funzt auch super... Naja, teilweise, sonst bräuchte ich heute nicht eure Hilfe...

Ich verlinke beim Menü über <...onclick=parent.mainFrame.document.location.href='link.htm'...>

Funtioniert auch super... Zumindest bei Sites die im selben Verzeichnis liegen...
Gebe ich einen externen Link an, z.B. den meines Gästebuchs, dann wird beim Anklicken das Gästebuch angezeigt, das Menü ist aber nicht mehr nutzbar...
Es gibt dann immer den JS-Fehler "Zugriff verweigert" mit der TZeilenangabe in welcher der Link steht auf welchen ich gerade versucht habe zu klicken...

Helft mir bitte, ich verzweifle...

Gruss Alex

  1. hallo Alex,

    Habe mir ein hübsches Menü gestrickt und funzt auch super

    Schön für dich.

    Funtioniert auch super... Zumindest bei Sites die im selben Verzeichnis liegen... Gebe ich einen externen Link an, z.B. den meines Gästebuchs, dann wird beim Anklicken das Gästebuch angezeigt, das Menü ist aber nicht mehr nutzbar...

    Oh. Wo liegt denn dein Menü? Hast du das eventuell noch in einen Frameset gepackt?

    Es gibt dann immer den JS-Fehler "Zugriff verweigert" mit der TZeilenangabe in welcher der Link steht auf welchen ich gerade versucht habe zu klicken...

    Na, das ist doch schonmal was. Du weißt zumindest, wo der Fehler liegt, bzw. wo dein Browser (solche Meldungen gibt der IE aus) "stolpert".

    Mach einfach mal deine Seite mit mozilla oder Netscape auf. Da gibts eine Javascript-Konsole, die dir etwas genauerere Fehlermeldungen und Hinweise liefern kann.

    Grüße aus Berlin

    Christoph S.

  2. Hi,

    Es gibt dann immer den JS-Fehler "Zugriff verweigert" mit der TZeilenangabe in welcher der Link steht auf welchen ich gerade versucht habe zu klicken...

    Du hast keine Moeglichkeit per JS auf Seiten zuzugreifen, deren Inhalt von einer anderen Domain stammt. Sicherheitsbeschraenkungen!
    Afaik gehts beim IE soweit, dass auch der Zugriff auf location bei popup oder frames gesperrt ist, wenn aktuelle location von einer fremden Domain stammt.
    Eventuell musst Du ein Framset, dass Dein Gaestebuch enthaelt,  drumrumbauen, auf das Du dann zugreifen kannst.

    Gruesse  Joachim

  3. Hi,

    Ich verlinke beim Menü über <...onclick=parent.mainFrame.document.location.href='link.htm'...>

    Daß die Quotes fehlen und bei diesem Attributinhalt zwingend vorgeschrieben sind, ist Dir bekannt?
    Daß location nicht im document, sondern im Frame liegt, ist Dir bekannt?

    cu,
    Andreas

    --
    Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
    http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/
    1. hi,

      Ich verlinke beim Menü über <...onclick=parent.mainFrame.document.location.href='link.htm'...>
      Daß location nicht im document, sondern im Frame liegt, ist Dir bekannt?

      da bin ich anderer meinung, und selfhtml mit mir:

      • "Das document-Objekt [liegt] in der Objekthierarchie von JavaScript [...] unterhalb des  window-Objekts."
      • "Da jedes Frame-Fenster aus Sicht des Browsers ein eigenes Fenster darstellt, ist das frames-Objekt lediglich eine Variante des  window-Objekts, also des allgemeinen Fenster-Objekts. Alle Eigenschaften und Methoden, die zum window-Objekt gehören, lassen sich auch auf das frames-Objekt, also auf einzelne Frame-Fenster anwenden."

      wenn du diese beiden aussagen kombinierst, dann ist parent.mainFrame.document.location durchaus die richtige schreibweise.

      und wenn du bei javascript->frames dir das erste beispiel ansiehst, findest du dort ebenfalls
      parent.frames[1].location.href = "sport.html";

      gruss,
      wahsaga

      1. Hi,

        Daß location nicht im document, sondern im Frame liegt, ist Dir bekannt?

        da bin ich anderer meinung, und selfhtml mit mir:

        Nein.

        • "Das document-Objekt [liegt] in der Objekthierarchie von JavaScript [...] unterhalb des  window-Objekts."

        Kein Zweifel.

        • "Da jedes Frame-Fenster aus Sicht des Browsers ein eigenes Fenster darstellt, ist das frames-Objekt lediglich eine Variante des  window-Objekts, also des allgemeinen Fenster-Objekts. Alle Eigenschaften und Methoden, die zum window-Objekt gehören, lassen sich auch auf das frames-Objekt, also auf einzelne Frame-Fenster anwenden."

        Auch kein Zweifel.

        Aber hier wird nirgends das location-Objekt erwähnt. Und schon gar nicht, daß das location-Objekt ein Unter-Objekt von document ist.

        Wie Du aus der Aussage, daß in einem Fenster ein document-Objekt liegt, die Behauptung, daß das location-Objekt im document liegt, ziehst, erklärst Du mir bitte noch.
        Daß in einem Frame (also in einem Fenster) ein document liegt, bezweifle ich ja gar nicht.

        Wenn ich mir http://selfhtml.teamone.de/javascript/objekte/window.htm und http://selfhtml.teamone.de/javascript/objekte/document.htm so angucke, seh ich das location-Unterobjekt nur in einem der beiden. Und zwar NICHT im document.

        cu,
        Andreas

        --
        Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
        http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/
        1. hi,

          Wenn ich mir http://selfhtml.teamone.de/javascript/objekte/window.htm und http://selfhtml.teamone.de/javascript/objekte/document.htm so angucke, seh ich das location-Unterobjekt nur in einem der beiden. Und zwar NICHT im document.

          jopp, stimmt.
          war etwas spät zum posten gestern abend, bier tat ein übriges ...

          gruss,
          wahsaga

  4. Hallo Alex,

    siehe auch </archiv/2003/6/49689/#m271757>.

    Mathias

    --
    Ein Mensch ist mehr als (.*[a-zA-Zäöü]{2,}.*_.*[a-zA-Z]{2,}.*_+<.*\w.*@{1}\w+.*.[a-zA-Z]{2,4}>)|(\w+@{1}\w+.*.[a-zA-Z]{2,4}_+(.*[a-zA-Zäöüäöü]{2,}.*_.*[a-zA-Zäöü]{2,}.*)) erfassen kann.