Mengakses URL Induk daripada Iframe
Apabila bekerja dengan iframe, selalunya perlu untuk mengakses URL halaman induk dari dalam iframe. Walau bagaimanapun, ini boleh menjadi masalah jika iframe dan halaman induk tidak berada pada subdomain yang sama.
Skrip dan Subdomain Merentas Tapak
Skrip merentas tapak (XSS ) berlaku apabila skrip berniat jahat dilaksanakan pada halaman web yang dipercayai oleh pengguna. Langkah keselamatan yang lebih ketat telah dilaksanakan untuk menghalang XSS, dan langkah ini diperluaskan kepada iframe.
Jika iframe dan halaman induk tidak berada pada subdomain yang sama, walaupun berada pada domain yang sama, akses tersebut dianggap skrip merentas tapak. Oleh itu, mendapatkan semula URL halaman induk daripada iframe menggunakan teknik seperti:
parent.document.location parent.window.location
akan mengakibatkan ralat dinafikan akses.
Mengakses URL Penyemak Imbas
Walaupun mustahil untuk mengakses terus URL halaman induk, terdapat penyelesaian untuk mendapatkan URL pelayar, iaitu URL halaman utama. Untuk melakukan ini:
var url = (window.location != window.parent.location) ? document.referrer : document.location.href;
Kod ini menyemak sama ada iframe dan halaman induk tidak berada pada URL yang sama. Jika ia berbeza, ia menggunakan document.referrer untuk mendapatkan URL halaman yang dipautkan ke iframe. Jika tidak, ia menggunakan document.location.href untuk mendapatkan URL dokumen semasa (iframe).
Nota Tambahan
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses URL Induk daripada Iframe pada Subdomain Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!