首頁  >  文章  >  web前端  >  如何偵測彈出視窗中的視窗載入事件

如何偵測彈出視窗中的視窗載入事件

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-24 12:55:31499瀏覽

How to Detect Window Onload Event in Popups

偵測彈出視窗中的視窗載入事件

Window.open 是JavaScript 中開啟新瀏覽器視窗或標籤的主要方法。透過指定位置、尺寸和瀏覽器控制項等參數,您可以自訂彈出視窗的外觀和功能。但是,沒有直接的方法來檢測新開啟的視窗何時完全載入。

在您的範例程式碼中,您嘗試使用 $(window.popup).onload 來處理載入事件,但失敗了在所有主要瀏覽器中。要克服此限制,您需要採用不同的方法。

解決方案涉及利用本機「載入」事件偵聽器。具體操作方法如下:

<code class="javascript">var myPopup = window.open(...);
myPopup.addEventListener('load', myFunction, false);</code>

此方法將事件偵聽器附加到 myPopup 視窗的「load」事件。當彈出視窗中的頁面完成載入時,將執行 myFunction 函數。

如果您的目標是Internet Explorer,則需要使用稍微不同的方法,因為IE 對事件偵聽器有條件支援:

<code class="javascript">myPopup[myPopup.addEventListener ? 'addEventListener' : 'attachEvent'](
  (myPopup.attachEvent ? 'on' : '') + 'load', myFunction, false
);</code>

此條件檢查允許程式碼在IE 和現代瀏覽器中運行。然而,值得注意的是,支援 IE 可能很麻煩,應該盡可能避免。

以上是如何偵測彈出視窗中的視窗載入事件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn