JS获取渲染后的样式

一般我们利用element.style.属性来获取CSS的样式,而此方法只能获取标签内的样式,无法获取头部或引入的样式,因此,而我们又需要获取其样式,则我们可以使用:(其中element为标签,proName为属性)
document.defaultView.getComputedStyle(element)[proName]的方法获其样式,
而此方法不支持IE6~IE8,因此我们针对IE8以下的使用
element.currentStyle[proName]

我们可以通过下面方法使其兼容

1 /*
2  * 功能: 通过属性名获取传入标签渲染后的样式
3  * 参数: 第一个参数表示你想要获取其属性值的标签; 第二个参数表示你想要获取其属性值的属性名
4  * 返回值: 返回第一个参数标签里面的属性名为第二个参数的样式
5  */
6 function getStyle(element, proName) {
7     // document.defaultView.getComputedStyle为标准浏览器方法,element.currentStyle兼容IE6~IE8
8     return document.defaultView ? document.defaultView.getComputedStyle(element)[proName] : element.currentStyle[proName];
9 }

JS获取渲染后的样式

时间: 2024-10-12 15:22:04

JS获取渲染后的样式的相关文章

JS-DOM:获取计算后的样式(同时兼容IE跟其他浏览器)

HTML部分 <div id="div1" style="">打发第三方</div> CSS部分 <style type="text/css">#div1{    height: 100px;    width: 100px;    font-size: 12px;    background-color: #ccc;}</style> JS部分 方法一: <script> window

【javascript】js 获取 url 后的参数值

以前写过一篇类似的博文(提取 url 的搜索字符串中的参数),但是个人觉得使用起来不是很方便,今天抽空重新写了个函数,该函数代码更加简洁. //获取 url 后的参数值 function getUrl(para){ var paraArr = location.search.substring(1).split('&'); var paraObj = {}; for(var i = 0;k = paraArr[i];i++){ paraObj[k.substring(0,k.indexOf('=

JS获取元素非行间样式的方法

currentStyle :只兼容IE浏览器 getComputedStyle :获取计算后的样式,不兼容IE6.IE7.IE8 如何获取非行间样式,同时兼容所有浏览器呢? window.onload=function(){ var oDiv1=document.getElementBy("div1"); if(oDiv.currentStyle){ //如果浏览器支持currentStyle oDiv.currentStyle.width; }else{ //如果浏览器不支持curr

js获取css的各种样式并且设置他们

js原生获取css样式,并且设置,看似简单,其实并不简单,我们平时用的ele.style.样式,只能获取内嵌的样式,但是我们写的样式基本都在style属性里面; 这里我们就需要: 下面这个代码主要是设置为了兼容IE这孙子; function getStyle(element, attr) { if (element.currentStyle) { return element.currentStyle[attr];//傻逼IE的获取元素的方法 } else { return getCompute

JavaScript 获取计算后的样式

w3c标准浏览器的获取方法 1 var oDiv = document.getElementById('div'); 2 //获取计算后的font-size 3 var sFs = getComputedStyle(oDiv,null).getPropertyValue('font-size');//推荐使用 4 //或者 5 var sFs= getComputedStyle(oDiv,null).fontSize; //不推荐使用 6 7 console.log(sFs); 8 9 //注1

js获取dom对象style样式的值

js获取到的dom对象的style通常是没有值得,因为我们都写在外部文件中,从慕课网上见到讲师封装的一个方法,挺不错.特此记录下来. 1 function getStyle(obj,attr){ 2 if(obj.currentStyle){//兼容IE 3 return obj.currentStyle[attr]; 4 }else{ 5 return getComputedStyle(obj,false)[attr]; 6 } 7 }

通过js获取元素的css样式属性

var display = this.currentStyle? this.currentStyle.display: window.getComputedStyle(this, null).display; 这样可以获取定义在内部~外部样式表以及内嵌的所有的样式~当然这里指获取display属性~简单来说就是只要定义了display~不管在哪里设置的~都可以获取出来

js获取url?后的参数

function GetRequest() { var url = location.search; //获取url中"?"符后的字串 var theRequest = new Object(); if (url.indexOf("?") != -1) { var str = url.substr(1); strs = str.split("&"); for(var i = 0; i < strs.length; i ++) { t

js获取、修改CSS样式

CSS样式分为三种,行内样式.内部样式.外部样式. 一.element.style.stylename 创建.获取.修改       行内样式   console.log(document.getElementById("testcss0").style.backgroundColor);//"" document.getElementById("testcss0").style.backgroundColor = "black&quo