Heim  >  Artikel  >  Web-Frontend  >  Implementierungsmethode für JavaScript-Iframe-Datenfreigabeschnittstellen_Javascript-Kenntnisse

Implementierungsmethode für JavaScript-Iframe-Datenfreigabeschnittstellen_Javascript-Kenntnisse

WBOY
WBOYOriginal
2016-05-16 15:21:341531Durchsuche

Das Übertragen von Daten zwischen einem Iframe und einem übergeordneten oder untergeordneten Fenster ist eine mühsame Angelegenheit. Es wäre sehr praktisch, wenn wir eine einmalige Schnittstelle schreiben könnten Funktion. Das Prinzip besteht darin, Daten bereits in window.top zwischenzuspeichern, sodass die Daten immer vorhanden sind und sich nicht ändern, unabhängig davon, wie sich die Ebene des untergeordneten Fensters und des übergeordneten Fensters ändert.

Der Code lautet wie folgt:

var share={ 
data:function(name,value){ 
var top=window.top, 
cache=top['_CACHE']||{}; 
top['_CACHE']=cache; 
return value?cache[name]=value:cache[name]; 
}, 
removeData:function(name){ 
var cache=window.top['_CACHE']; 
if(cache&&cache[name]) 
{ 
delete cache[name]; 
} 
} 
}; 
share.data('mayi','http://www.jb51.net'); 

Der obige Code entspricht unseren Anforderungen. Sie können ihn selbst analysieren. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen.

Wissen Sie, wie man Werte zwischen Iframes in JS überträgt? Lassen Sie mich Ihnen im Folgenden eine kurze Einführung geben.

1. Holen Sie sich die Elemente der übergeordneten Seite in der Iframe-Unterseite:

a>window.parent.document dient zum Abrufen des Objekts im übergeordneten Seitendokument
b> Wenn Sie die Methode in der übergeordneten Seite abrufen möchten: window.parent.xxxx(); xxxx() ist die Methode;

2. Holen Sie sich die Elemente auf der Iframe-Unterseite auf der übergeordneten Seite:

a>
var child = document.getElementByIdx_x("mainFrame").contentWindow;//mainFrame id ist die ID des übergeordneten Seiten-Iframes
child.document; //Das Dokumentobjekt auf der untergeordneten Seite abrufen;

Stellungnahme:
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