iWeb HTML Snippet / iFrame

R

rwiesner

Aktives Mitglied
Thread Starter
Dabei seit
14.06.2009
Beiträge
194
Reaktionspunkte
16
Hallo Leute,

schlagt mich nicht, wenn ich ein Problem mit iWeb im Bereich "Web-Programmierung" erstelle.

Ich habe eine Blogseite mit iWeb09 erstellt, die ich auf einem eigenen Server hoste.

Nun habe ich folgendes Problem: Über das HTML Widget inkludiere ich eine weitere HTML Seite in einem iFrame.

Nun zu meinem Problem: iFrame möchte ich auf DOM-Objekte, js-Variablen des Parents zugreifen. Am wichtigsten wäre als erstes die URL der einbettenden Seite.

Leider sind alle Versuche fehlgeschlagen:
  • parent.location.href:
    Code:
    Error:<http://www.robert-wiesner.de> wurde die Erlaubnis für das Lesen der Eigenschaft Location.href von <http://robert-wiesner.de> verweigert.
  • iFrame mit URL Parametern
  • Parent document per MooTools auslesen.

Hat jemand eine Idee wie ich an die URL der Parent-Seite komme?

Der Code für das HTML Widget:
Code:
<IFRAME SRC =http://robert-wiesner.de/Roberts_Blog/IntenseDebate/intenseDebate.html" WIDTH="640px" HEIGHT="850px" FRAMEBORDER="0" MARGINWIDTH ="0px" MARGINHEIGHT="0px" SCROLLING="auto"> Your browser does not support IFRAME </IFRAME>

Den Code der fertigen Seite könnt ihr bei Bedarf unter http://robert-wiesner.de/Roberts_Blog/About.html ansehen.

Gruß
Robert
 
Zuletzt bearbeitet:
Ist Dir aufgefallen, dass der von Dir angegebene "Inhalt" des iFrame gar nicht direkt aufgerufen werden kann? Das gibt ja sogar im Browser eine entsprechende Fehlermeldung...
 
Die Seite soll auch nicht direkt aufgerufen werden, deswegen habe ich diese Meldung mittels JavaScript implementiert.

Mittlerweile bin ich dem Problem schon näher auf die Pelle gerückt:

Code:
if(parent.document.domain != document.domain)
{
//Hier gibt es einen Fehler
//Tritt auf wenn die Seite mit subdomain "www" aufgerufen wird.
}
 
Ein iFrame ruft die Seite aber quasi direkt auf...
Zu dem Coding-Fetzen: Wenn es DIch stört, dann nimm das mit dem if ... () doch raus?
 
... der Code-Fetzen war nur zur Veranschaulichung der Problems gedacht ;) Naja mittlerweile läuft es.
 
Beim Aufruf per GET oder POST übergeben würde ich sagen!


Das Du nicht an die Daten kommst ist kein Fehler sonder ein Feature! Den gleichen Weg machen sich ja auch Cross-Site-Attacken zu nutze. Wenn Du Also nicht willst das die Browser schon vor dem Aufruf Deiner Seite gegen pot. Sicherheitslücken warnen dann solltest Du derartige Versuche unterlassen. Das hier Ziel- und Quelldomäne identisch sind ist ja nur ein Zufall/Einzelfall.
 
Gelöst

Ich hatte den iFrame-Inhalt fälschlicherweise mit absolutem Pfad angegeben:

Code:
<iframe width="640px" height="850px" frameborder="0" scrolling="auto" marginheight="0px" marginwidth="0px" src="http://robert-wiesner.de/Roberts_Blog/IntenseDebate/intenseDebate.html">Robert Wiesner</iframe>

Wurde die Seite von http://robert-wiesner.de/Roberts_Blog/About.html aufgerufen, war natürlich alles in Butter (Parent-Domain = iFrame-Domain)
.

Der Fehler trat auf, als die Seite von http://www.robert-wiesner.de/Roberts_Blog/About.html aufgerufen wurde, da dann natürlich Cross-Site-Scription Schutz zugeschlagen (Parent-Domain != iFrame-Domain).


Nun nutze ich im iFrame src-Attribut eine relative Pfadangabe und das Problem ist damit gegessen :)

Wäre ich froh, wenn man mit iWeb eigenen Code ohne iFrame einbinden könnte. Ich hoffe einfach mal auf das nächste Release ;)
 
Zurück
Oben Unten