首頁  >  文章  >  web前端  >  如何在 Javascript 中處理 IFrame 載入事件而不存取內容?

如何在 Javascript 中處理 IFrame 載入事件而不存取內容?

Linda Hamilton
Linda Hamilton原創
2024-10-19 10:07:30992瀏覽

How to Handle IFrame Loading Events in Javascript without Accessing Content?

Javascript 中的IFrame 載入事件處理

在Javascript 中,可以在IFRAME 載入完成時執行回調,即使IFRAME 內容是無法存取。以下是實現此目的的方法:

方法:

  1. 以程式設計方式建立 IFRAME 並將其附加到 DOM。
  2. 使用 jQuery . load() 事件處理程序來偵測 IFRAME 載入完成。
  3. 在回呼中使用逾時(例如 50 毫秒)來延遲 IFRAME 刪除,確保資料擷取。

範例:

<code class="js">$('#myUniqueID').load(function () {
    if (typeof callback === 'function') {
        // Retrieve the IFRAME body content and pass it to the callback
        callback($('body', this.contentWindow.document).html());
        // Remove the IFRAME after a short delay to allow content retrieval
        setTimeout(function () { $('#myUniqueID').remove(); }, 50);
    }
});</code>

注意: 如果IFRAME 內容是從不同的領域提供的,則由於跨域資源共享(CORS),將無法檢索其正文限制。

以上是如何在 Javascript 中處理 IFrame 載入事件而不存取內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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