Unsafe JavaScript versucht, auf den Frame mit URL zuzugreifen

9

Ich habe eine Seite mit einem Iframe und einem Javascript von Iframe, die auf eine Funktion des Eltern-Frames zugreifen. Die Seiten befinden sich auf dem gleichen Server (es handelt sich nicht um Cross-Domain-Scripting), ich habe kein Problem mit FF und IE, aber wenn ich es in Chrome verwende, habe ich die folgende Nachricht.

  

Unsicheres JavaScript versucht, auf einen Frame mit URL zuzugreifen    Zypern   aus einem Rahmen mit URL    Ссылка .   Domains, Protokolle und Ports müssen übereinstimmen.

Wie kann ich dieses Problem lösen? Ich suche seit 4 Stunden mit Google. Ich hoffe, dass mir jemand helfen kann.

BEARBEITEN: Code

Dies ist das JavaScript auf der Iframe-Seite. Dieses JavaScript ruft eine Parent-Frame-Javascript-Funktion "setUfficioPostale" auf. Dies ist der Punkt, an dem Chrome den Fehler "Unsicherer Zugriff ..." angibt.

%Vor%

Dies ist das Javascript im übergeordneten Rahmen für das Senden von Formularen. Dies ist zum Senden von ausgeblendeten Formularen mit versteckten Parametern an eine in iframe geladene Seite.

%Vor%

Dies ist die iframe-Definition auf der übergeordneten Seite.

%Vor%

Dies ist das Formular mit dem Zielattribut zum Senden von Parametern an die iframe-Seite.

%Vor%     
jRicca 06.09.2011, 10:59
quelle

3 Antworten

2

Mit Chrome können Sie das nicht tun. Code von Iframe kann nicht auf Elterncode zugreifen.

    
madeinstefano 25.10.2011 19:17
quelle
2

Überprüfen Sie zunächst, ob beide Seiten mit dem SRC attr des Iframes genau referenziert werden, also:

%Vor%

weil es möglich ist, dass, selbst wenn sie auf demselben Rechner laufen, einer dieser iFrames wie folgt aufgerufen wird:

%Vor%

und der andere:

%Vor%

oder eine andere Kombination.

Sie können das überprüfen, indem Sie den Code mit den Developer Tools in allen modernen Browsern überprüfen.

Mit Chrome können Sie die Funktion des Elternteils aufrufen, wenn sie sich in derselben Domäne befinden (ich mache es jeden Tag). Es sollte also kein Problem geben.

Ich verwende diese Funktion, um auf Kinder-iFrames zuzugreifen:

%Vor%

und nur "parent.yourParentFunction ()", wenn Sie auf eine Funktion im übergeordneten Element zugreifen möchten.

Überprüfen Sie, ob die Elternfunktion dem Window-Objekt (globaler Namespace) zugewiesen ist

Viel Glück damit: -)

    
ChangePictureWeekly 14.11.2011 14:05
quelle
1

Der übergeordnete Rahmen hat möglicherweise einen anderen Wert für "document.domain" festgelegt als "samedomain". Aktualisieren Sie die Eigenschaft document.domain im iframe js auf den im übergeordneten Frame festgelegten Wert, und es sollte funktionieren.

    
X_Cli 13.04.2012 09:45
quelle

Tags und Links