老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)


Posted in Javascript onSeptember 19, 2018

众所周知,CSS样式有三种类型:行内样式、内部样式和外部样式,JavaScript获取CSS样式时分为两种情况:行内样式获取法 和 非行内样式获取法 。

一、行内样式获取相对简单,通过element.style.attr(元素.style.属性)即可获取,示例:

<!DOCTYPE html>
 <html lang="en">
 <head>
   <meta charset="UTF-8">
   <title>JavaScript获取CSS样式</title>
 </head>
 <body>
   <!-- 给p标签设置行内样式并添加点击事件 -->
   <p style='width: 200px;height: 100px;background: pink' onclick='show()'>博客园--开发者的网上家园</p>
   <script type="text/javascript">
     function show() {
       var obj = document.getElementsByTagName('p')[0];
       alert(obj.style.width);
     }
   </script>
 </body>
 </html>

运行:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

通过element.style.attr即可获取行内样式属性值,也可设置属性值,形式如:obj.style.width = 300 + 'px';

二‘、非行内样式获取法,因浏览器的不同又分为两种,即基于IE浏览器的 和 非IE浏览器的如谷歌火狐等。

1、基于IE浏览器的非行内获取法:通过 element.currentStyle['attr']

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

IE运行结果:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

2、基于非IE如火狐谷歌等非行内获取法:通过 getComputedStyle(element.null/伪类)[attr]

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

火狐运行结果:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

 二者兼容定法:

老生常谈JavaScript获取CSS样式的方法(兼容各浏览器)

总结:以上就是JavaScript获取CSS样式的方法,其中获取非行内样式兼容IE和非IE可通过封装一个函数,实现多次调用,

切记:非行内样式获取法,只能获取不能设置。

总结

以上所述是小编给大家介绍的老生常谈JavaScript获取CSS样式的方法(兼容各浏览器),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript高级程序设计 阅读笔记(十四) js继承机制的实现
Aug 14 Javascript
基于JQuery模仿苹果桌面的Dock效果(初级版)
Oct 15 Javascript
JavaScript检查数字是否为整数或浮点数的方法
Jun 09 Javascript
javascript中checkbox使用方法简单实例演示
Nov 17 Javascript
jquery实现两边飘浮可关闭的对联广告
Nov 27 Javascript
悬浮广告方法日常收集整理
Mar 18 Javascript
JS使用cookie设置样式的方法
Jun 30 Javascript
JS实现简单的浮动碰撞效果示例
Dec 28 Javascript
vue.js 打包时出现空白页和路径错误问题及解决方法
Jun 26 Javascript
从零搭一个自用的前端脚手架的方法步骤
Sep 23 Javascript
js实现简易ATM功能
Oct 27 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
Nov 05 Javascript
vue生命周期和react生命周期对比【推荐】
Sep 19 #Javascript
Vue瀑布流插件的使用示例
Sep 19 #Javascript
vue-cli项目修改文件热重载失效的解决方法
Sep 19 #Javascript
解决vuecli3.0热更新失效的问题
Sep 19 #Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 #Javascript
解决vue热替换失效的根本原因
Sep 19 #Javascript
三种Webpack打包方式(小结)
Sep 19 #Javascript
You might like
php中几种常见安全设置详解
2010/04/06 PHP
Yii框架实现的验证码、登录及退出功能示例
2017/05/20 PHP
laravel实现前后台路由分离的方法
2019/10/13 PHP
新老版本juqery获取radio对象的方法
2010/03/01 Javascript
jquery checkbox全选、取消全选实现代码
2010/03/05 Javascript
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
2010/12/04 Javascript
判断用户是否在线的代码
2011/03/05 Javascript
NodeJs中的非阻塞方法介绍
2012/06/05 NodeJs
toggle一个div显示或隐藏且可扩展成自定义下拉框
2013/09/12 Javascript
javascript实现全角半角检测的方法
2015/07/23 Javascript
js自定义select下拉框美化特效
2016/05/12 Javascript
使用Javascript监控前端相关数据的代码
2016/10/27 Javascript
nodejs个人博客开发第五步 分配数据
2017/04/12 NodeJs
VueJs组件prop验证简单介绍
2017/09/12 Javascript
VUE预渲染及遇到的坑
2018/09/03 Javascript
vue路由 遍历生成复数router-link的例子
2019/10/30 Javascript
JS组件库AlloyTouch实现图片轮播过程解析
2020/05/29 Javascript
实例讲解React 组件
2020/07/07 Javascript
剖析Python的Twisted框架的核心特性
2016/05/25 Python
python3利用smtplib通过qq邮箱发送邮件方法示例
2017/12/03 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
2019/06/05 Python
Python实现将字符串的首字母变为大写,其余都变为小写的方法
2019/06/11 Python
Python监控服务器实用工具psutil使用解析
2019/12/19 Python
Python读取文件内容为字符串的方法(多种方法详解)
2020/03/04 Python
anaconda3安装及jupyter环境配置全教程
2020/08/24 Python
CSS3 真的会替代 SCSS 吗
2021/03/09 HTML / CSS
加拿大女鞋品牌:ALDO
2016/11/13 全球购物
英国知名奢侈品包包品牌:Milli Millu
2016/12/22 全球购物
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
如何用Java判断一个文件或目录是否存在
2012/11/19 面试题
先进典型事迹材料
2014/12/29 职场文书
个人催款函范文
2015/06/23 职场文书
遗嘱范文
2015/08/07 职场文书
Python学习之异常中的finally使用详解
2022/03/16 Python
MySQL远程无法连接的一些常见原因总结
2022/09/23 MySQL