javascript 获取元素样式必杀技


Posted in Javascript onMay 04, 2014

Javascript获取CSS属性值方法:getComputedStyle和currentStyle

1 .对于元素的内联CSS样式(<div style="color:#369">hello</div>),可以直接使用element.style.color来直接获取css属性的值;

2. 但是对于外部定义的css样式使用这种方式就无法获取了,而且IE浏览器和其他标准浏览器(Firefox,Chrome,Opera,Safari)使用的方法不一样,IE浏览器使用element.currentStyle,W3C标准浏览器使用getComputedStyle来获取。

1. IE获取元素外部定义的CSS属性值: element.currentStyle

currentStyle对象返回了元素上的样式表,但是style对象只返回通过style标签属性应用到元素的内嵌样式。

因此,通过currentStyle对象获取的样式值可能与通过style对象获取的样式值不同。

例如,如果段落的color属性值通过链接或嵌入样式表设置为红色( red ),而不是内嵌的话,对象.currentStyle.color 将返回正确的颜色,而对象style.color不能返回值。但是,如果用户指定了 <P STYLE="color:'red'">,currentStyle和STYLE对象都将返回值 red。
currentStyle对象反映了样式表中的样式优先顺序。在 HTML 中此顺序为:

1) 内嵌样式

2) 样式表规则

3) HTML 标签属性

4) HTML 标签的内部定义

2. W3C获取元素外部定义的CSS属性值: window.getComputedStyle(element, pseudoElt)
element必选,HTML元素
pseudoElt必选,获取该元素的伪类样式

function getStyle(node, property){ 
if (node.style[property]) { 
return node.style[property]; 
} 
else if (node.currentStyle) { 
return node.currentStyle[property]; 
} 
else if (document.defaultView && document.defaultView.getComputedStyle) { 
var style = document.defaultView.getComputedStyle(node, null); 
return style.getPropertyValue(property); 
} 
return null; 
}
Javascript 相关文章推荐
用javascript实现在小方框中浏览大图的代码
Aug 14 Javascript
简单实用的js调试logger组件实现代码
Nov 20 Javascript
关于使用 jBox 对话框的提交不能弹出问题解决方法
Nov 07 Javascript
JS复制到剪贴板示例代码
Oct 30 Javascript
初识Javascript小结
Jul 16 Javascript
KnockoutJS 3.X API 第四章之事件event绑定
Oct 10 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
Nov 29 Javascript
JavaScript使用类似break机制中断forEach循环的方法
Nov 13 Javascript
django js 实现表格动态标序号的实例代码
Jul 12 Javascript
使用vue实现HTML页面生成图片的方法
Mar 12 Javascript
基于javascript实现日历功能原理及代码实例
May 07 Javascript
Vue 中如何将函数作为 props 传递给组件的实现代码
May 12 Javascript
javascript操作excel生成报表全攻略
May 04 #Javascript
javascript如何使用bind指定接收者
May 04 #Javascript
用jquery.sortElements实现table排序
May 04 #Javascript
jquery实现的鼠标拖动排序Li或Table
May 04 #Javascript
自己用jQuery写了一个图片的马赛克消失效果
May 04 #Javascript
javascript实现2048游戏示例
May 04 #Javascript
Extjs 4.x 得到form CheckBox 复选框的值
May 04 #Javascript
You might like
PHP学习笔记 (1) 环境配置与代码调试
2011/06/19 PHP
PHP合并数组+号和array_merge的区别
2015/06/25 PHP
简单谈谈PHP vs Node.js
2015/07/17 PHP
thinkphp5 模型实例化获得数据对象的教程
2019/10/18 PHP
PHP标准库 (SPL)――Countable用法示例
2020/06/05 PHP
js 无提示关闭浏览器页面的代码
2010/03/09 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
js 实现css风格选择器(压缩后2KB)
2012/01/12 Javascript
javascript删除字符串最后一个字符
2014/01/14 Javascript
JavaScript设计模式开发中组合模式的使用教程
2016/05/18 Javascript
使用jQuery加载html页面到指定的div实现方法
2016/07/13 Javascript
Ionic + Angular.js实现验证码倒计时功能的方法
2017/06/12 Javascript
shiro授权的实现原理
2017/09/21 Javascript
vue复合组件实现注册表单功能
2017/11/06 Javascript
jQuery动态添加li标签并添加属性和绑定事件方法
2018/02/24 jQuery
jquery.onoff实现简单的开关按钮功能(推荐)
2018/05/24 jQuery
基于JavaScript实现贪吃蛇游戏
2020/03/16 Javascript
Javascript中Math.max和Math.max.apply的区别和用法详解
2020/08/24 Javascript
[02:49:21]2019完美盛典全程录像
2019/12/08 DOTA
python中as用法实例分析
2015/04/30 Python
使用NumPy和pandas对CSV文件进行写操作的实例
2018/06/14 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
Python提取支付宝和微信支付二维码的示例代码
2019/02/15 Python
Python爬虫:将headers请求头字符串转为字典的方法
2019/08/21 Python
详解Python3 pandas.merge用法
2019/09/05 Python
python机器学习实现决策树
2019/11/11 Python
canvas学习笔记之2d画布基础的实现
2019/02/21 HTML / CSS
蔻驰美国官网:COACH美国
2016/08/18 全球购物
Nº21官方在线商店:numeroventuno.com
2019/09/26 全球购物
个人自荐书
2013/12/20 职场文书
摄影助理岗位职责
2014/02/07 职场文书
发展部经理职责规定
2014/02/22 职场文书
老干部工作先进集体事迹材料
2014/05/21 职场文书
地球一小时活动总结
2015/02/27 职场文书
Jupyter Notebook内使用argparse报错的解决方案
2021/06/03 Python
详解MySQL中的pid与socket
2021/06/15 MySQL