問題:可以存取從不同網域嵌入的 iframe 的 DOM 內容嗎?
跨域iframe存取是開發者共同面臨的挑戰。瀏覽器實作同源策略,該策略限制頁面上執行的腳本存取不同來源的資料或呼叫函數。此策略可以防止潛在的安全風險和資料外洩。
在這種情況下,iframe 內容是從不同的來源載入的,因此頁面上執行的腳本無法直接檢查或修改 iframe 的 DOM。
答案:不幸的是,答案是否定的。出於安全考量和 XSS 保護,主流瀏覽器不允許在一個網站上執行的 JavaScript 讀取或寫入不同來源的 iframe 的 DOM。
替代解決方案:如果您對 iframe 中託管的網站具有編輯權限,您可以考慮使用 HTML5 postMessage API。這允許您在父視窗和子視窗之間進行通信,發送和接收訊息。透過利用此 API,您可以在 iframe 內交換有限的資訊或觸發操作。但是,需要注意的是,允許的通訊受到瀏覽器安全協定的限制。
以上是跨域iframe可以存取DOM嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!