Carsten Albrecht: Auf Frameeigenschaften über Dom.grenzen hinweg zugreifen

Hallo Leute,
Folgende Problematik macht mich seit Tagen kirre, und ich hab wenig Hoffnung, daß es eine Lösung gibt:

bekanntlich kann man "top.location.href" wunderbar mit nem neuen URL beschreiben und der Browser, der gerade ein Frameset anzeigt, springt auch wunderbar zum neu reingeschriebenen URL.

Nun möchte ich das genaue Gegenteil erreichen, ich will LESEND auf diese oder eine ähnliche Eigenschaft des Frames-Objektes "top" zugreifen, um zu erfahren, auf welcher Domain das Frameset selbst liegt.

SelfHTML gibt ja eine wunderbare Liste einiger Eigenschaften an, die ähnlich wie "document.URL" jeweils den URL des Dokumentes oder des Framesets enthalten, jedoch kann man nicht eine EINZIGE davon per Javascript auslesen, sobald das Frameset nicht auf derselben Domain liegt wie der auslesende Frame.

Sinn und Zweck des Ganzen:
Ihr kennt alle die beliebten und viel verfluchten Weiterleitungsdomains und Billigst-Domainanbieter, die die eigentliche Homepage kurzerhand in einen Frame der Höhe "100%" packen, und ich möchte meinem Counterdienst beibringen, zuverlässig eine solche Weiterleitungsdomain zu erkennen und vielleicht idealerweise sogar noch deren evtl. vorhandenen Referer auszuwerten.
ein "top.document.referrer" funktioniert auch hier wunderbar, wenn das aufrufende Frameset auf derselben Domain liegt, bei fremder Domain heißt es wie immer sonst auch "zugriff verweigert".

Mir würde auch eine simple Fehlersteuerung reichen, die bei einem "zugriff verweigert" nicht das ganze Skript abbricht, sondern ne Variable auf true setzt, die eben signalisiert, daß auf den Referer des Framesets nicht zugegriffen werden kann.

Jemand ne sinnvolle Idee????

Besten Dank für eure Bemühungen
Carsten Albrecht, CAITS.de

  1. Hoi,

    Nun möchte ich das genaue Gegenteil erreichen, ich will LESEND
    auf diese oder eine ähnliche Eigenschaft des Frames-Objektes
    "top" zugreifen, um zu erfahren, auf welcher Domain das Frameset
    selbst liegt.

    Das geht nicht. Nicht bei Dokumenten, die nicht auf derselben
    Domain liegen.

    ein "top.document.referrer" funktioniert auch hier wunderbar, wenn
    das aufrufende Frameset auf derselben Domain liegt, bei fremder
    Domain heißt es wie immer sonst auch "zugriff verweigert".

    Ja.

    Mir würde auch eine simple Fehlersteuerung reichen, die bei einem
    "zugriff verweigert" nicht das ganze Skript abbricht, sondern ne
    Variable auf true setzt, die eben signalisiert, daß auf den
    Referer des Framesets nicht zugegriffen werden kann.

    Jemand ne sinnvolle Idee????

    vielleicht sowas wie <body ... onerror="set_true();">

    Das ist allerdings ungetestet. Ich weiss also nicht, ob das geht.

    Gruesse,
     CK

    1. Teste doch mal, ob die Variablenabfrage funktioniert, z. B. "if(top.location)":

      if(!top.location)alert("Nein 1")
      if(!top.location.href)alert("Nein 2")