使用 jQuery 可以获取一个元素相关的所有 CSS 样式,可以通过 .css() 方法或 .getComputedStyle() 方法来实现。
1.使用 .css() 方法
.css()
方法可以获取或设置匹配元素的一个或多个样式属性值。
步骤:
- 选取需要获取样式的元素,例如:
“`html
Hello World!
“`
- 使用 .css() 方法获取此元素的所有 CSS 样式:
javascript
var cssObj = $("#example").css();
此时,cssObj 变量将包含元素 #example 相关的所有 CSS 样式。
示例:
<div id="example" style="color:red;background-color:yellow">Hello World!</div>
<button id="btn">点击获取元素样式</button>
<script>
$("#btn").click(function(){
var cssObj = $("#example").css();
console.log(cssObj);
});
</script>
输出:
{
"color": "rgb(255, 0, 0)",
"background-color":"rgb(255,255,0)"
}
2.使用 .getComputedStyle() 方法
.getComputedStyle()
方法用于获取计算后的样式,包括通用的样式和显示的样式。
步骤:
- 选取需要获取样式的元素,例如:
“`html
Hello World!
“`
- 使用 .getComputedStyle() 方法获取此元素的所有 CSS 样式:
javascript
var cssObj = window.getComputedStyle($("#example").get(0));
该方法需要传入一个 DOM 元素,使用 $().get(0)
可以把 jQuery 对象转换为 DOM 元素。
示例:
<div id="example" style="color:red;background-color:yellow">Hello World!</div>
<button id="btn">点击获取元素样式</button>
<script>
$("#btn").click(function(){
var cssObj = window.getComputedStyle($("#example").get(0));
console.log(cssObj);
});
</script>
输出:
{
"0":"color",
"1":"rgb(255, 0, 0)",
"2":"background-color",
"3":"rgb(255, 255, 0)",
...
}
需要注意的是,.getComputedStyle() 返回的是一个 CSSStyleDeclaration 对象,其中包含了该元素应用的所有样式,可以通过该对象获取样式的值或名称。
以上两种方法都可以获取一个元素相关的所有 CSS 样式,具体使用哪种方法可以根据实际情况进行选择。