js原生获取css样式,并且设置,看似简单,其实并不简单,我们平时用的ele.style.样式,只能获取内嵌的样式,但是我们写的样式基本都在style属性里面; 这里我们就需要: 下面这个代码主要是设置为了兼容IE这孙子; function getStyle(element, attr) { if (element.currentStyle) { return element.currentStyle[attr];//傻逼IE的获取元素的方法 } else { return getCompute…
众所周知,obj.style只能够获取 <div id="a" style="width:100px;"></div> 结构上的样式 如果想要获取: <style> div{width:100px;} </style> 的样式的话,需要: function getStyle(obj, attr) { if(obj.currentStyle) { return obj.currentStyle[attr]; } else…
一.CSS样式共有三种:内联样式(行间样式).内部样式.外部样式(链接式和导入式) <div id="a" style="width: 100px;height: 100px;"></div> <style type="text/css"> #a{ width: 100px; height: 100px; } </style> <body> <div id="a"…
在JS中需要获取某个元素的宽高或者是绝对定位的位置信息,通常我们会这么写: var elemWidth = elem.style.width; console.log(elemWidth); //(空字符串) 然而我们会发现什么也没获取到,这到底是什么原因? 我们仔细观察一下我们是怎么获取这些信息的.通过元素的 style 属性,获取一个关于元素样式信息的对象,在里面取我们需要的样式信息.而我们是不是理所当然的认为我们写在 style 标签内的样式,或者通过 link 引入的样式表的样式信息都存…
一般我们利用element.style.属性来获取CSS的样式,而此方法只能获取标签内的样式,无法获取头部或引入的样式,因此,而我们又需要获取其样式,则我们可以使用:(其中element为标签,proName为属性)document.defaultView.getComputedStyle(element)[proName]的方法获其样式,而此方法不支持IE6~IE8,因此我们针对IE8以下的使用element.currentStyle[proName] 我们可以通过下面方法使其兼容 /* *…
原帖地址:http://kingphp.blog.163.com/blog/static/20042324420120109438458/ 我们通过dom.style获得的属性是有限制的,只能获取html中的css,而link的css是得不到的,可以这样获得: function getStyle (obj, prop) {//获取css, 包括link的css文件中的样式 if (obj.currentStyle) {//IE return obj.currentStyle[prop]; } e…
获取当前对象的样式DOM标准中的全局方法 getComputedStyle(obj).width (获取元素的宽度),但在非标准IE浏览器(IE8)以下有兼容问题IE8以下要这样写 obj.currentStyle.width  这样的话在IE8以下正常显示,但标准浏览器下又会报错,所以一要判断一下 //getStyle()函数,获取元素的非行内样式 //使用方法 getStyle(元素,"属性名") 如:getStyle(oBox,"background") fu…
js获取到的dom对象的style通常是没有值得,因为我们都写在外部文件中,从慕课网上见到讲师封装的一个方法,挺不错.特此记录下来. function getStyle(obj,attr){ if(obj.currentStyle){//兼容IE return obj.currentStyle[attr]; }else{ return getComputedStyle(obj,false)[attr]; } }…
封装 function getStyle(obj , attr){ return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj)[attr]; //兼容写法IE:火狐 }; 效果如下: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name=&qu…
所谓计算样式,就是嵌入式样式.外部样式表.内联样式综合的样式表现,那么如何来获取呢? "DOM2 级样式"增强了document.defaultView,提供了getComputedStyle()方法,可以调用最终的样式. 这个方法接受两个参数:要取得计算样式的元素和一个伪元素字符串(例 如":after").如果不需要伪元素信息,第二个参数可以是null. getComputedStyle()方法返回一 个CSSStyleDeclaration 对象(与style…