近来写东西遇到一个题目,经由过程document.getElementById(id).style.XXX
没法猎取到款式值?查完材料才发明要领只能猎取元素的内联款式,那要猎取内部款式或外部款式该怎么办?
getComputedStyle
本来猎取外部款式或内部款式用的是window.getComputedStyle
要领,用法以下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>getComputedStyle</title>
<style>
div{width:100px; height:100px; background-color:#333;}
</style>
</head>
<body>
<div id="div"></div>
<script>
window.onload=function(){
var div = document.getElementById('div');
console.log(window.getComputedStyle(div, false)['width']); //100px
};
</script>
</body>
</html>
这类要领能够很好的在Chrome、Firefox、Opera、Safari、IE9+运转,但在IE8及以下的浏览器就不行了,本来在IE6-IE8有本身的要领:element.currentStyle
。所以为了兼容性斟酌我们能够封装一下:
function getStyle (obj, sName){
return (obj.currentStyle || window.getComputedStyle(obj, false))[sName];
}
末了
第一次写文章能够不怎么样,望大神们轻拍……
自转行来如今公司已有几个月了,公司就我一个前端,事情也比较少,很多基本东西不写项目都要忘了,接下来要本身写点东西好好回想稳固一下了。