Heim > Web-Frontend > js-Tutorial > Hauptteil

js, um zu verhindern, dass Webseiten durch Iframe-Frames verschachtelt werden, und die Unterschiede zwischen mehreren location.hrefs

高洛峰
Freigeben: 2017-01-12 10:58:34
Original
1552 Leute haben es durchsucht

Lassen Sie uns zunächst die Unterschiede und Zusammenhänge zwischen window.location.href, location.href, self.location.href, parent.location.href und top.location.href verstehen. Einfach ausgedrückt: mehrere location.href Der Unterschied besteht darin, dass js die Iframe-Funktion der Webseite implementiert
"window.location.href", "location.href", "self.location.href" ist der Sprung zu dieser Seite
"parent.location .href“ ist der obige einstufige Seitensprung
„top.location.href“ ist der äußerste Seitensprung

Zum Beispiel (wie oben gezeigt):
Wenn A, B, C, und D sind alle Es handelt sich um eine gewöhnliche Seite, D ist der Iframe von C, C ist der Iframe von B und B ist der Iframe von A.
Wenn das js in D so geschrieben ist:
"window .location.href", "location.href": D Seitensprung
"parent.location.href": C Seitensprung
"top.location.href": A Seitensprung

If Es gibt ein Formular auf Seite D:

: D-Seite springt, nachdem das Formular gesendet wurde
: Eine neue Seite wird angezeigt, nachdem das Formular gesendet wurde
: C nach dem Absenden des Formulars Seitensprung

Betreff Seitenaktualisierung, auf Seite D steht Folgendes:
"parent.location.reload( );": C Seitenaktualisierung (natürlich können Sie auch das Opener-Objekt des untergeordneten Fensters verwenden, um das Objekt des übergeordneten Fensters abzurufen window: window.opener.document.location.reload(); )
"top.location.reload(); ": Eine Seitenaktualisierung

Rückblickend ist es sehr einfach, die js-Funktion zu implementieren um zu verhindern, dass Webseiten durch Iframes eingerahmt werden. Unter der Annahme, dass die Datei content.html in der Datei frame.html eingerahmt ist, lautet die Idee wie folgt: Fügen Sie js zu content.html hinzu, um die eigene top.location.href-Adresse zu erkennen und festzustellen, ob es sich um die top.location.href-Adresse handelt. Wenn ja, ist es nicht verschachtelt. Wenn nicht, können wir Ihnen einen Hinweis geben.

<script language="javascript"> 
if(top.location!==self.location){ 
WarningTxt1 = "content页面被iframe了!"; 
WarningTxt2 = "我们跳出iframe,直接访问content页面吧!"; 
alert(WarningTxt1); 
alert(WarningTxt2); 
top.location.href=self.location.href; 
} 
</script>
Nach dem Login kopieren

Weitere js-Implementierungen zur Verhinderung der Verschachtelung von Webseiten durch Iframe-Frames und die Unterschiede zwischen mehreren location.href-bezogenen Artikeln finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage