」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在 JavaScript 中檢索 HTML 元素的 CSS 屬性值?

如何在 JavaScript 中檢索 HTML 元素的 CSS 屬性值?

發佈於2024-11-06
瀏覽:322

How to Retrieve CSS Property Values for HTML Elements in JavaScript?

在 JavaScript 中取得 HTML 元素的 CSS 屬性值

在 Web 開發中,動態操作 CSS 屬性可以增強使用者體驗和介面。使用 JavaScript,存取這些屬性非常簡單。

在您的場景中,CSS 檔案連結到 HTML 頁面,您需要檢索類別名稱為「的 div 的特定屬性(例如顏色)」佈局。 「以下是如何使用JavaScript 實現此目的:

選項1:解析文檔樣式表(不建議)

說明:
此方法涉及手動迭代文檔.styleSheets 物件並解析其內容以搜尋所需的屬性。

選項2:模擬元素並使用計算樣式(首選)

說明:
此方法效率更高,結果更準確。目標元素具有相同類別名稱的元素,然後存取所建立元素的計算樣式。 ]

JavaScript 程式碼:

function getStyleProp(elem, prop) { if (window.getCompulatedStyle) { return window.getCompulatedStyle(elem, null).getPropertyValue(prop); } else if (elem.currentStyle) { 返回 elem.currentStyle[prop]; // IE相容性 } } window.onload = 函數() { var d = document.createElement("div"); // 建立一個div元素 d.className = "佈局"; // 設定類別名稱 警報(getStyleProp(d,「顏色」)); // 取得「顏色」屬性 };
function getStyleProp(elem, prop) {
  if (window.getComputedStyle) {
    return window.getComputedStyle(elem, null).getPropertyValue(prop);
  } else if (elem.currentStyle) {
    return elem.currentStyle[prop]; // IE compatibility
  }
}
window.onload = function () {
  var d = document.createElement("div"); // Create a div element
  d.className = "layout"; // Set the class name
  alert(getStyleProp(d, "color")); // Retrieve the "color" property
};

如果要在沒有內聯樣式定義的情況下檢索繼承的樣式屬性,可以暫時刪除內聯樣式,然後檢索繼承的值。

JavaScript代碼:

function getNonInlineStyle(elem, prop) { var 樣式 = elem.cssText; // 快取內嵌樣式 elem.cssText = ""; // 刪除內嵌樣式 var繼承PropValue = getStyleProp(elem, prop); // 取得繼承的值 elem.cssText = 樣式; // 恢復內聯樣式 返回繼承的PropValue; }
            
版本聲明 本文轉載於:1729674691如有侵犯,請洽[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3