获取CSS样式主要有两种方式:
获取CSS样式主要有两种方式:
- 使用JavaScript内置的方法(window.getComputedStyle or element.currentStyle)
- 解析CSS文件
使用JavaScript内置的方法
1. window.getComputedStyle
window.getComputedStyle() 方法返回一个对象,该对象包含了指定元素的所有CSS属性的值(属于该元素本身的属性和来自层叠样式表的属性)。所以,当你想获取一个元素的CSS属性时,就可以使用这个方法获取。
let element = document.getElementById("myDiv")
let style = window.getComputedStyle(element, null);
console.log(style.getPropertyValue("background-color")); // 输出样式属性background-color的值
2. element.currentStyle
对于 IE 浏览器,使用 window.getComputedStyle() 不如 element.currentStyle 更可靠。它们的用法类似,如下所示:
let element = document.getElementById("myDiv");
console.log(element.currentStyle.backgroundColor);
解析CSS文件
如果想获取某个样式文件中的特定样式值,我们可以解析该样式文件并获取具体的样式值。下面是一个基本的代码示例:
- HTML文件
<!DOCTYPE html>
<html>
<head>
<title>解析CSS文件</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="myDiv">我是一个文本框</div>
<script src="main.js"></script>
</body>
</html>
- style.css 文件
#myDiv{
width:100px;
height:150px;
background-color: #888;
color: #fff;
}
- main.js 文件
//从样式文件获取样式
function getStyle(className, styleName) {
var classNames = document.styleSheets[0].rules || document.styleSheets[0].cssRules;
for (var x in classNames) {
if (classNames[x].selectorText === className) {
return classNames[x].style[styleName];
}
}
}
//打印背景颜色
console.log(getStyle("#myDiv", "background-color"));
此代码将会输出样式文件中 #myDiv 样式属性值的 background-color 的具体值,即 #888。
参考:https://www.cnblogs.com/liwenfeng/p/11734773.html
沃梦达教程
本文标题为:解析js如何获取css样式
基础教程推荐
猜你喜欢
- 关于document.cookie的使用javascript 2024-02-05
- css float属性 图解float属性的点点滴滴 2024-01-24
- 给Ajax返回的HTML标签动态添加样式的方法 2023-02-01
- javascript高仿热血传奇游戏实现代码 2024-03-09
- CSS3制作气泡对话框的实例教程 2024-03-31
- CSS 文本域和按钮对齐不一致解决方案 2024-03-10
- UI设计师必看:详解最全面的组件化开发与设计指南 2024-01-21
- css 如何清除浮动的示例代码 2023-12-21
- 基于AGS JS开发自定义贴图图层 2024-01-09
- HTML基础详解(上) 2022-09-21