获取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样式


基础教程推荐
猜你喜欢
- Vue前端路由hash与history差异深入了解 2024-01-29
- FormData+Ajax实现上传进度监控 2023-02-14
- vue-cli 卸载版本及安装指定版本的命令 2023-10-08
- js读取cookie方法总结 2024-01-05
- vue项目优化 2023-10-08
- [markdown&html]有趣的东西 2023-10-27
- jQuery Tab插件 用于在Tab中显示iframe,附源码和详细说明 2024-01-07
- 用JS实现网页元素阴影效果的研究总结 2024-01-08
- 关于JavaScript的Array数组方法详解 2023-07-09
- CSS3盒子模型详解 2024-01-23