js跨域问题之跨域iframe自适应大小实现代码_javascript技巧
<script> <BR>function setHeight(){ <BR>var dHeight = document.documentElement.scrollHeight; <BR>var t = document.createElement("div"); <BR>t.innerHTML = '<iframe id="kxiframeagent" src="http://rest.kaixin001.com/api/agent.html#'+dHeight+'"scrolling="yes" height="0px" width="0px">'; <BR>document.documentElement.appendChild(t.firstChild); <BR>} <BR></script>
我想着跨域如何解决啊!后来去网上搜索了一下子 恍然大悟
具体如下 我是复制过来了 大家重点理解一下子它的实现思路 :
问题:
A域名下的页面a.htm中通过iframe嵌入B域名下的页面b.html,由于b.html的大小等是不可预知而且会变化的,所以需要 a.htm中的iframe自适应大小.
问题本质 :
js的跨域问题,因为要控制a.htm中iframe的大小就必须首先读取得到b.html的大小,A、B不属于同一个域,js的访问受限,读取不 到b.html的大小.
解决方案:
首先前提是A,B是合作关系,b.html中能引入A提供的js
首先a.html中通过iframe引入了b.html
B在b.html中引入了A提供的js文件
Html代码
该js首先读取b.html的宽和高,然后创建一个iframe,src为和A同一个域的中间代理页面a_proxy.html,吧读取到的宽和 高设置到src的hash里面
Html代码
a_proxy.html是A域下提供好的中间代理页面,它负责读取location.hash里面的width和height的值,然后设置与 它同域下的a.html中的iframe的宽和高.
Js代码
var pParentFrame = parent.parent.document.getElementById("aIframe");
var locationUrlHash = parent.parent.frames["aIframe"].frames["iframeProxy"].location.hash;
pParentFrame.style.width = locationUrlHash.split("#")[1].split("|")[0]+"px";
pParentFrame.style.height = locationUrlHash.split("#")[1].split("|")[1]+"px";
var pParentFrame = parent.parent.document.getElementById("aIframe");
var locationUrlHash = parent.parent.frames["aIframe"].frames["iframeProxy"].location.hash;
pParentFrame.style.width = locationUrlHash.split("#")[1].split("|")[0]+"px";
pParentFrame.style.height = locationUrlHash.split("#")[1].split("|")[1]+"px";
这样的话a.html中的iframe就自适应为b.html的宽和高了.
其他一些类似js跨域操作问题也可以按这个思路去解决

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Inline-Frames werden in HTML als Iframes bezeichnet. Eine Beschriftung gibt einen rechteckigen Bereich innerhalb des Inhalts an, in dem der Browser verschiedene Dokumente mit Bildlaufleisten und Rändern anzeigen kann. Um ein anderes Dokument in das aktuelle HTML-Dokument einzubetten, verwenden Sie Inline-Frames. Mit dem HTMLiframe-Namensattribut kann ein Verweis auf ein Element angegeben werden. In JavaScript werden Verweise auf Elemente auch über das Namensattribut hergestellt. Ein Iframe wird im Wesentlichen verwendet, um eine Webseite innerhalb der aktuell angezeigten Webseite anzuzeigen. Die URL des Dokuments, das den Iframe enthält, wird über das Attribut „src“ angegeben. Syntax Das Folgende ist die Syntax von HTML <iframesrc="URL"title="d

Die Daten-ID in einem Iframe bezieht sich auf ein benutzerdefiniertes Attribut, das in HTML-Tags zum Speichern der Kennung eines bestimmten Elements verwendet wird. Mithilfe des data-id-Attributs können Sie dem iframe-Element eine eindeutige Kennung hinzufügen, sodass es in JavaScript bearbeitet und abgerufen werden kann. Die Benennung des data-id-Attributs kann entsprechend den spezifischen Anforderungen angepasst werden, es werden jedoch normalerweise einige Namenskonventionen befolgt, um seine Einzigartigkeit und Lesbarkeit sicherzustellen. Das data-id-Attribut kann auch verwendet werden, um einen bestimmten Iframe zu identifizieren und zu bearbeiten.

Lösung des domänenübergreifenden Problems von PHPSession Bei der Entwicklung der Front-End- und Back-End-Trennung sind domänenübergreifende Anforderungen zur Norm geworden. Wenn es um domänenübergreifende Probleme geht, nutzen wir in der Regel Sitzungen und verwalten diese. Aufgrund von Richtlinieneinschränkungen für den Browserursprung können Sitzungen jedoch standardmäßig nicht über Domänen hinweg gemeinsam genutzt werden. Um dieses Problem zu lösen, müssen wir einige Techniken und Methoden verwenden, um eine domänenübergreifende gemeinsame Nutzung von Sitzungen zu erreichen. 1. Die häufigste Verwendung von Cookies zum domänenübergreifenden Teilen von Sitzungen

Zu den Ladeereignissen von iframe gehören das Ereignis onload, das Ereignis onreadystatechange, das Ereignis onbeforeunload, das Ereignis onerror, das Ereignis onabort usw. Detaillierte Beschreibung: 1. onload-Ereignis, das den JavaScript-Code angibt, der nach dem Laden des Iframes ausgeführt werden soll. 2. onreadystatechange-Ereignis, das den JavaScript-Code angibt, der ausgeführt werden soll, wenn sich der Iframe-Status ändert usw.

iframe in Python ist ein HTML-Tag, das zum Einbetten einer anderen Webseite oder eines anderen Dokuments in eine Webseite verwendet wird. In Python können Sie verschiedene Bibliotheken und Frameworks zum Verarbeiten und Bearbeiten von Iframes verwenden. Die am häufigsten verwendete davon ist die BeautifulSoup-Bibliothek, mit der Sie den Inhalt eines Iframes problemlos aus einer Webseite extrahieren und bearbeiten und verarbeiten können. Zu wissen, wie man mit Iframes umgeht und sie manipuliert, ist sowohl für die Webentwicklung als auch für das Daten-Scraping äußerst nützlich.

Zu den Gefahren in Iframes zählen vor allem: 1. Schädliche Webseiten können andere Webseiten über Iframes laden und einige Angriffe ausführen. Durch das Laden von Webseiten unter anderen Domänennamen in Iframes Richtlinie kann verletzt werden, um eine domänenübergreifende Kommunikation zu erreichen, die böswillig angegriffen werden kann. In Iframes geladene Webseiten können JS-Code ausführen, was zu Sicherheitsproblemen führen kann Über Iframe usw. geladene Inhalte können nicht korrekt analysiert und indiziert werden.

Um das Scrollen eines Iframes zu überwachen, sind bestimmte Codebeispiele erforderlich. Wenn wir das Iframe-Tag verwenden, um andere Webseiten in eine Webseite einzubetten, müssen wir manchmal bestimmte Vorgänge für den Inhalt im Iframe ausführen. Eine der häufigsten Anforderungen besteht darin, auf das Scroll-Ereignis des Iframes zu warten, damit der entsprechende Code beim Scrollen ausgeführt werden kann. Im Folgenden wird die Verwendung von JavaScript zum Überwachen des Scrollens eines Iframes vorgestellt und spezifische Codebeispiele als Referenz bereitgestellt. Holen Sie sich zuerst das iframe-Element

Der eingebettete iFrame-Player ist eine Technologie, die einen Videoplayer in eine Webseite einbettet. Die Vorteile des eingebetteten Players sind: 1. Flexibilität: Durch die Verwendung von Iframe-Tags können Videomedien aus verschiedenen Quellen in dieselbe Webseite eingebettet werden. 2. Benutzerfreundlichkeit: Zum Abspielen einfach den Einbettungscode kopieren und einfügen 3. Das Erscheinungsbild und das Verhalten des Players können durch Festlegen von Parametern gesteuert werden. 4. Der Betrieb des Players kann mithilfe von JavaScript usw. gesteuert werden.
