Mengesan Peristiwa Pemuatan Halaman dalam Windows Dibuka dengan window.open
Dalam beberapa keadaan, ia menjadi perlu untuk mengesan apabila halaman telah dimuatkan sepenuhnya dalam tetingkap yang dibuat menggunakan kaedah window.open. Walau bagaimanapun, percubaan untuk menangkap acara ini menggunakan $(window.popup).onload tidak terbukti berjaya. Artikel ini menyelidiki teknik alternatif yang membolehkan pembangun memantau peristiwa pemuatan halaman dengan berkesan dalam tetingkap yang dibuka melalui window.open.
Kunci untuk mencapai tugas ini terletak pada penggunaan kaedah addEventListener. Berikut ialah coretan kod yang dikemas kini yang menangani isu ini:
var myPopup = window.open(...); myPopup.addEventListener('load', myFunction, false);
Kod ini memberikan pendengar acara khusus kepada objek tetingkap, yang kemudian mencetuskan myFunction apabila halaman dalam tetingkap yang dibuka telah selesai dimuatkan.
Memastikan Keserasian dengan IE
Adalah penting untuk ambil perhatian bahawa menyokong Internet Explorer (IE) memerlukan pendekatan yang sedikit berbeza:
myPopup[myPopup.addEventListener ? 'addEventListener' : 'attachEvent']( (myPopup.attachEvent ? 'on' : '') + 'load', myFunction, false );
Sintaks lanjutan ini menambah keserasian dengan IE dengan memanfaatkan kedua-dua kaedah addEventListener dan attachEvent.
Walaupun menyokong IE boleh menyusahkan, adalah disyorkan untuk berbuat demikian hanya apabila benar-benar perlu kerana pertimbangan penonton.
Atas ialah kandungan terperinci Bagaimana untuk Mengesan Peristiwa Pemuatan Halaman dalam Windows Dibuka dengan Window.open?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!