首頁 >web前端 >css教學 >如何從跨域 iframe 取得計算樣式?

如何從跨域 iframe 取得計算樣式?

Barbara Streisand
Barbara Streisand原創
2024-12-05 04:05:16518瀏覽

How Can I Get Computed Styles from a Cross-Domain Iframe?

如何從跨域內容擷取計算樣式

問題:

存取計算的高度和寬度值跨域iframe中的元素可能具有挑戰性,特別是當您無法訪問iframe的內容時

解決方案:

使用瀏覽器特定功能:

  • Fi. Opera、野生動物園: window.getCompulatedStyle(element)
  • IE: element.currentStyle

應用於跨域內容:

應用於跨域內容:

若要從跨網域內容擷取計算樣式,您可以在現代瀏覽器中使用window.getCompulatedStyle 或IE 中的 element.currentStyle。但是,這些函數僅適用於目前文件中的元素,因此您需要在使用它們之前導航至 iframe 的 DOM。

window.getComputedStyle(document.getElementById("frameId"), null).getPropertyValue("height")
範例(WebKit):

原生jQuery 函數:

$('#frameId').height();

或者,您可以使用Query 的. height()函數,這簡化了過程:

    附加說明:
  • 需要注意的是window.getCompulatedStyle 傳回一個具有計算樣式的不可變物件,而element.currentStyle 傳回一個可以隨元素樣式變更的活動物件變更。
您可能需要在 iframe 內的 head 元素中新增 ID,以便日後更容易選擇。

以上是如何從跨域 iframe 取得計算樣式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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