window.getComputedStyle(element,[string])

  • 1参为需要获取样式的元素,2参指定伪元素字符串(如“::after”,不需要则为null),设置2参可获取element的伪元素css样式
  • 返回一个CSSStyleDeclaration对象,是所有css样式(内部、外部、内联)按层叠规则作用于该元素的最终结果样式
  • 获得的样式只能读取不能设置
  • 常用于FF,IE9+以下不支持此方法

element.currenStyle

  • 返回一个CSSStyleDeclaration对象,是所有css样式(内部、外部、内联)按层叠规则作用于该元素的最终结果样式
  • 只有IE和Opera支持使用
  • 是属性不是方法

element.style:

  • 只能操作内联样式,不能获取内部与外部样式
  • 获取的样式属性可以进行设置

在JS工具类中封装自己的获取样式函数,兼容性写法:

export default class myUtils{
    
static getCompatibleStyle(elemOrSelect,pseudo){
if(!elemOrSelect) return;
if(elemOrSelect.constructor === String) elemOrSelect = document.querySelector(elemOrSelect);
if(!pseudo) return getComputedStyle(elemOrSelect,pseudo);
return elemOrSelect.currentStyle ? elemOrSelect.currentStyle : getComputedStyle(elemOrSelect,null);
}
}

调用:

<script type="module">
import utils from "./myUtils.js";
console.log(utils.getCompatibleStyle("div",null).backgroundColor);
console.log(utils.getCompatibleStyle("span","::after").display);
</script>

最新文章

  1. jdk 8 lambda表达式 及在Android Studio的使用示例
  2. JavaScript之聊天室设计摸拟
  3. 全栈JavaScript之路(七)学习 Comment 类型节点.
  4. Session、SessionId和Cookie的关系
  5. [使用]Git--命令行
  6. eclipse安卓引入库项目的正确方法
  7. maven 添加memcached.jar配置方法
  8. 20165223 实验三 敏捷开发与XP实践
  9. linux 服务器下的基本操作
  10. Debian stretch更换国内源
  11. Bootstrap 插件收集
  12. PSP(5.4——5.10)以及周记录
  13. Kubernetes中的nodePort,targetPort,port的区别和意义(转)
  14. Azure IoT 预配置解决方案
  15. opencv——对象计数
  16. Git - could not read Username for &#39;https://github.com&#39;,push报错解决办法
  17. Linux基础命令---ln
  18. 1~n中1的和
  19. 人and绩效and职业道德
  20. myql root用户远程访问

热门文章

  1. HDU 3530
  2. c# excel 读写 64位操作系统 64位excel
  3. Linux下制作和使用静态库和动态库
  4. NUMPY的学习之路(2)——索引,合并,分割,赋值
  5. cgroup的学习笔记
  6. Vue学习心得----新手如何学习Vue(转载)
  7. app内区域截图利用html2Canvals保存到手机 截屏 (html2Canvals2版本1.0.0)
  8. mybatis - MybatisAutoConfiguration
  9. 【设计模式】UML类图及Java的类之间的关系
  10. 通过颜色绘制图片UIImage