Oliver Neumann: top.document.location.href nicht unter OPERA

Hallo,

folgendes Problem :

Ich habe ein HTML-Dokument, in welches ein <IFRAME> integriert ist. Von einem Dokuemnt, welches sich im IFRAME befindet versuche ich nun das gesamte HTML-Dokument (also um den IFRAME herum) mittels

top.document.location.href='...'

neu zu belegen, leider klappt dies im Opera (5.02 und 6.04) nicht. Netscape ab 6.0 sowie IE und Mozilla 1.0 machen das ohne Problem und soweit ich weiß, dürfte das oben doch auch DOM-konform sein. Im Operade habe ich aber keine Chance.

Kennt jemand eine andere Möglichkeit? parent.document... geht auch nicht.

Danke
Oliver

  1. Hallo,

    heißt das nicht top.location.href...

    location ist doch kein unterobjekt von document...

    Odium

    1. heißt das nicht top.location.href...
      location ist doch kein unterobjekt von document...

      Leider nein ... es müsste top.document... heissen und mit

      top.location.href

      geht es auch nicht (eben getestet).

      Übrigens klappt

      top.document.location.href

      im Opera 6.x doch ohne Probleme, das Problem tritt also nur im 5.x Browser von Opera auf! Vielleicht ein BUG?

      1. heißt das nicht top.location.href...
        location ist doch kein unterobjekt von document...

        Leider nein ... es müsste top.document... heissen und mit

        Warum müsste es so heißen?

        top.location.href

        geht es auch nicht (eben getestet).

        Was geht daran nicht? Fehlermeldung? Reaktion?

        Übrigens klappt

        top.document.location.href

        im Opera 6.x doch ohne Probleme, das Problem tritt also nur im 5.x Browser von Opera auf! Vielleicht ein BUG?

        Wohl nur aufgrund einiger netter Javascript-Programmierer, die eine automatische Fehlerkorrektur eingebaut haben, welche eine Kopie von window.location auch unter window.document.location verfügbar macht.

        Sorry, aber "location" ist _kein_ Unterobjekt von document. Also _kann_ deine Variante gar nicht gehen. Was bringt dich zur Annahme, es müsste top.document.location.href heißen?

        Bedenke, dass du möglicherweise keine Domaingrenzen überschreiten darfst.

        - Sven Rautenberg

        1. top.location.href
          geht es auch nicht (eben getestet).
          Was geht daran nicht? Fehlermeldung? Reaktion?

          Opera lädt die angegebene Seite einfach im IFRAME und nicht im Dokument darüber (top)!

          Sorry, aber "location" ist _kein_ Unterobjekt von document. Also _kann_ deine Variante gar nicht gehen. Was bringt dich zur Annahme, es müsste top.document.location.href heißen?

          Ok, mein Fehler. Trotzdem funktioniert ein

          top.location.href

          nicht im Opera 5.02 in einem IFRAME. Warum?

          1. Moin!

            Opera lädt die angegebene Seite einfach im IFRAME und nicht im Dokument darüber (top)!

            Aha, interessant.

            Ok, mein Fehler. Trotzdem funktioniert ein

            top.location.href

            nicht im Opera 5.02 in einem IFRAME. Warum?

            Ich hab' keine Ahnung, warum. Scheint, als ob die Referenzen auf die jeweiligen Fenster etwas falsch gesetzt werden. Hast du dein Problem online betrachtbar? Ansonsten würde ich ganz plump meinen, dass ein target-Attribut im Link auch ganz nett sein kann und vielleicht hilft.

            - Sven Rautenberg

      2. Hallo,

        sehr eigenartig bei dir...

        top.location.href = 'seite.html';

        geht bei dir nicht? das ist ja wohl standard... und location ist ein unterobjekt von window...

        http://selfhtml.teamone.de/javascript/objekte/location.htm

        Odium