Mengendalikan Acara onLoad untuk Windows Dibuka dengan window.open
Apabila menggunakan window.open untuk mencipta tetingkap baharu, pendengar acara onload mungkin gagal berfungsi untuk tetingkap yang baru dibuka. Artikel ini menangani isu ini dan menyediakan penyelesaian.
Kod berikut menunjukkan isu:
<code class="js">window.popup = window.open($(this).attr('href'), 'Ad', 'left=20,top=20,width=500,height=500,toolbar=1,resizable=0'); $(window.popup).onload = function() { alert("Popup has loaded a page"); };</code>
Kod ini tidak akan berfungsi dalam penyemak imbas utama seperti IE, Firefox dan Chrome. Untuk menyelesaikan isu ini, gunakan kaedah addEventListener sebaliknya:
<code class="js">var myPopup = window.open(...); myPopup.addEventListener('load', myFunction, false);</code>
Jika anda perlu menyokong IE, anda boleh menggunakan kod sandaran berikut:
<code class="js">myPopup[myPopup.addEventListener ? 'addEventListener' : 'attachEvent']( (myPopup.attachEvent ? 'on' : '') + 'load', myFunction, false );</code>
Walaupun menyokong IE boleh menyusahkan , adalah penting untuk mempertimbangkan khalayak sasaran dan membuat kemudahan yang diperlukan jika perlu.
Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Acara onLoad untuk Windows Dibuka dengan window.open?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!