Rumah  >  Artikel  >  hujung hadapan web  >  Kaedah pelaksanaan antara muka perkongsian data iframe JavaScript_kemahiran javascript

Kaedah pelaksanaan antara muka perkongsian data iframe JavaScript_kemahiran javascript

WBOY
WBOYasal
2016-05-16 15:21:341531semak imbas

Mengirim data antara iframe dan tetingkap induk atau tetingkap anak adalah perkara yang menyusahkan jika kita boleh menulis antara muka sekali dan untuk semua Berikut ialah pengenalan ringkas tentang cara melaksanakannya fungsi. Prinsipnya adalah untuk cache data seawal window.top, supaya tidak kira bagaimana tahap tetingkap anak dan tetingkap induk berubah, data akan sentiasa wujud dan tidak akan berubah.

Kodnya adalah seperti berikut:

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'); 

Kod di atas memenuhi keperluan kami Kod ini agak mudah Anda boleh menganalisisnya sendiri Jika anda mempunyai sebarang soalan, anda boleh meninggalkan mesej.

Adakah anda tahu cara memindahkan nilai antara Iframes dalam JS? Izinkan saya memberi anda pengenalan ringkas di bawah.

1. Dapatkan elemen halaman induk dalam sub-halaman iframe:

a>window.parent.document ialah untuk mendapatkan objek dalam dokumen halaman induk
b> Jika anda ingin mendapatkan kaedah dalam halaman induk js: window.parent.xxxx() ialah kaedah

2. Dapatkan elemen dalam subhalaman iframe dalam halaman induk:
a>
var child = document.getElementByIdx_x("mainFrame").contentWindow;//mainFrame id ialah id halaman induk iframe
child.document; //Dapatkan objek dokumen dalam halaman kanak-kanak;

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn