javascript 学习笔记—— getComputedStyle()方法介绍

  getComputedStyle()属于window对象下的一个方法,用于获取元素的样式属性;该方法在MDN网站上有详细的介绍,可点击该链接https://developer.mozilla.org/en-US/docs/Web/API/Window/getComputedStyle

  方法定义:window.getComputedStyle(元素,[伪类]),第二个参数是可选的,通常会将其设为null;
       返回值为一个对象,包含该元素的所有样式属性;

  可通过一个测试来了解getComputedStyle(),测试中通过getComputedStyle()获取h1元素的样式属性,并通过控制台输出

//css部分

#title{
    width: 280px;
    height: 35px;
    color: #000;
    text-align: center;
    box-shadow: 5px 5px 5px #333;
}  

//html部分

<body>
    <h1 id="title">Hello world.</h1>
  
 
 <script>
  var title = document.getElementById('title'),

     style = window.getComputedStyle(title,null);

  console.log(style.length);//228

  for(var i in style)

  console.log("The property " + i + " :" + style[i]);

 </script>

 

</body>

 firefox输出页面:

  Firebug下输出结果:

  

  .......................

  

  从输出结果可知,通过getComputedStyle()方法获取到了h1元素的228个样式属性,也就是说该方法并不是仅仅取得我们为元素设置的css样式属性,其他未设置的属性同样可以获得,也即获得最终应用在该元素上的所有样式属性;

  当然,通常我们使用该方法是希望能知道元素上的某个样式属性的具体设置,那我们应该怎么做呢?其实很简单,因为getComputedStyle()返回的是一个对象,所以我们就可以通过点引用的方式获取相应的属性值,如:(接着上面的测试例子)

  

<script>
    console.log(style.width);//打印出h1的width值
</script>

 

  输出:

与getCOmputedStyle()方法类似还有一个IE专属的currentStyle对象,currentStyle对象包含有获取和设置样式属性值的方法,详细介绍可看这里https://msdn.microsoft.com/en-us/library/ie/ms535231(v=vs.85).aspx

结束语:因getComputedStyle()方法是只读的,故不能通过其去设置样式的属性值,设置样式的属性可通style对象来解决

  

转载于:https://www.cnblogs.com/leiyu-90/p/4398688.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值