Mengakses Elemen iFrame daripada JavaScript
Dalam pembangunan web, menggunakan iFrames adalah perkara biasa untuk membenamkan kandungan atau halaman luaran. Walau bagaimanapun, mengakses elemen dalam iFrame daripada halaman induk boleh menjadi mencabar.
Pernyataan Masalah
Seorang pembangun menghadapi isu tidak dapat mengakses elemen textarea yang terletak dalam iFrame menggunakan window.parent.getelementbyID().value daripada halaman anak. Mereka mencari penyelesaian untuk mendapatkan semula nilai textarea daripada halaman induk.
Penyelesaian
Untuk menyelesaikan isu ini, seseorang boleh menggunakan koleksi window.frames jika iFrame dan halaman induk berada dalam domain yang sama. Dengan menggunakan koleksi ini, ia menjadi mungkin untuk mengakses elemen iFrame menggunakan sintaks yang serupa dengan mengakses elemen dalam objek dokumen biasa:
<code class="js">// replace 'myIFrame' with the iFrame's id // replace 'myIFrameElemId' with the textarea's id within the iFrame window.frames['myIFrame'].document.getElementById('myIFrameElemId')</code>
Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa pendekatan ini hanya terpakai apabila iFrame dan halaman induk berada dalam domain yang sama. Untuk senario merentas domain, kebimbangan keselamatan timbul, mendorong penyemak imbas menyekat akses sedemikian untuk tujuan keselamatan.
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Elemen iFrame daripada JavaScript dalam Situasi Cross-Domain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!