利用原生JavaScript获取元素样式只是获取而已


Posted in Javascript onOctober 08, 2014

ps:是获取样式,不是设置样式。若没有给元素设置样式值,则返回浏览器给予的默认值。(论坛整理)

1、element.style:只能获取写在元素标签中的style属性里的样式值,无法获取到定义在<style></style>和通过<link href=”css.css”>加载进来的样式属性

var ele = document.getElementById('ele');

ele.style.color; //获取颜色

2、window.getComputedStyle():可以获取当前元素所有最终使用的CSS属性值。
window.getComputedStyle("元素", "伪类");

这个方法接受两个参数:要取得计算样式的元素和一个伪元素字符串(例如“:before”) 。如果不需要伪元素信息,第二个参数可以是null。也可以通过document.defaultView.getComputedStyle(“元素”, “伪类”);来使用
var ele = document.getElementById('ele');

var styles = window.getComputedStyle(ele,null);

styles.color; //获取颜色

可以通过style.length来查看浏览器默认样式的个数。IE6-8不支持该方法,需要使用后面的方法。对于Firefox和Safari,会把颜色转换成rgb格式。

3、element.currentStyle:IE 专用,返回的是元素当前应用的最终CSS属性值(包括外链CSS文件,页面中嵌入的<style>属性等)。

var ele = document.getElementById('ele');

var styles = ele.currentStyle;

styles.color;

注意:对于综合属性border等,ie返回undefined,其他浏览器有的返回值,有的不返回,但是borderLeftWidth这样的属性是返回值的

4、getPropertyValue():获取CSS样式的直接属性名称

var ele = document.getElementById('ele');

window.getComputedStyle(ele,null).getPropertyValue('color');

注意:属性名不支持驼峰格式,IE6-8不支持该方法,需要使用下面的方法

5、getAttribute():与getPropertyValue类似,有一点的差异是属性名驼峰格式

var test = document.getElementById('test');

window.getComputedStyle(test, null).getPropertyValue("backgroundColor");

注意:该方法只支持IE6-8。

下面的获取样式方法兼容IE、chrome、FireFox等

function getStyle(ele) {
var style = null;

if(window.getComputedStyle) {

style = window.getComputedStyle(ele, null);

}else{

style = ele.currentStyle;

}

return style;

}

在JQuery中,常用css()获取样式属性,其底层运作就应用了getComputedStyle以及getPropertyValue方法。
Javascript 相关文章推荐
js给onclick事件赋值,动态传参数实例解说
Mar 28 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
Oct 31 Javascript
常用的JavaScript模板引擎介绍
Feb 28 Javascript
JavaScript动态修改背景颜色的方法
Apr 16 Javascript
jQuery编程中的一些核心方法简介
Aug 14 Javascript
基于BootStrap Metronic开发框架经验小结【一】框架总览及菜单模块的处理
May 12 Javascript
Bootstrap自定义文件上传下载样式
May 26 Javascript
微信小程序 实战小程序实例
Oct 08 Javascript
用Object.prototype.toString.call(obj)检测对象类型原因分析
Oct 11 Javascript
使用express来代理服务的方法
Jun 21 Javascript
原生JavaScript实现购物车
Jan 10 Javascript
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
Jan 29 Javascript
javascript学习笔记(八)正则表达式
Oct 08 #Javascript
javascript学习笔记(七)Ajax和Http状态码
Oct 08 #Javascript
javascript学习笔记(六)数据类型和JSON格式
Oct 08 #Javascript
javascript学习笔记(五)原型和原型链详解
Oct 08 #Javascript
JavaScript中获取高度和宽度函数总结
Oct 08 #Javascript
5个可以帮你理解JavaScript核心闭包和作用域的小例子
Oct 08 #Javascript
JavaScript中获取样式的原生方法小结
Oct 08 #Javascript
You might like
php中支持多种编码的中文字符串截取函数!
2007/03/20 PHP
PHP实现的简单日历类
2014/11/29 PHP
php通过array_push()函数添加多个变量到数组末尾的方法
2015/03/18 PHP
windows8.1下Apache+Php+MySQL配置步骤
2015/10/30 PHP
php如何控制用户对图片的访问 PHP禁止图片盗链
2016/03/25 PHP
实现php删除链表中重复的结点
2018/09/27 PHP
jquery下checked取值问题的解决方法
2012/08/09 Javascript
web css实现整站样式互相切换
2013/10/29 Javascript
一个支付页面DEMO附截图
2014/07/22 Javascript
javascript实现随时变化着的背景颜色
2015/04/02 Javascript
JavaScript+CSS实现仿天猫侧边网页菜单效果
2015/08/25 Javascript
JS实现网页上随机产生超链接地址的方法
2015/11/09 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
2017/03/24 jQuery
angular中不同的组件间传值与通信的方法
2017/11/04 Javascript
vue2.0 elementUI制作面包屑导航栏
2018/02/22 Javascript
vue首次赋值不触发watch的解决方法
2018/09/11 Javascript
浅谈Three.js截图并下载的大坑
2019/11/01 Javascript
详解JavaScript之ES5的继承
2020/07/08 Javascript
vue 使用post/get 下载导出文件操作
2020/08/07 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
整理Python中的赋值运算符
2015/05/13 Python
python基于multiprocessing的多进程创建方法
2015/06/04 Python
Python实现读取txt文件并画三维图简单代码示例
2017/12/09 Python
Python实现的读取电脑硬件信息功能示例
2018/05/30 Python
在cmder下安装ipython以及环境的搭建
2018/10/19 Python
在python中实现调用可执行文件.exe的3种方法
2019/07/07 Python
Python Tensor FLow简单使用方法实例详解
2020/01/14 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
利用python+request通过接口实现人员通行记录上传功能
2021/01/13 Python
纯css3实现的动画按钮的实例教程
2014/11/17 HTML / CSS
类、抽象类、接口的差异
2016/06/13 面试题
写好自荐信的要点
2013/11/06 职场文书
国际会议邀请函范文
2014/01/16 职场文书
党的群众路线个人对照检查材料
2014/09/23 职场文书
使用CSS3实现按钮悬停闪烁动态特效代码
2021/08/30 HTML / CSS
使用Redis实现点赞取消点赞的详细代码
2022/03/20 Redis