js操作css样式
div.style.width=“200px” 在div标签内我们添加了一个style属性 并设定了width值 这种写法会给
标签带来了大量的style属性 跟实际项目是不符的 我们没有让css和html分离
所以如果只是为了获取css样式
window.getComputedStyle() 获取经过计算机计算的所有属性
就是只要渲染出来的都是经过计算的。
1.window.getComputedStyle() (只读)
写法:window.getComputedStyle() ie678写法:aa.currentStyle
↑↑↑获取经过计算机计算的所有属性(只要渲染出来的 都是经过计算的)(ie678不支持这个方法)
两个参数 第一个参数是当前元素 第二个一般写成null 并且这个方法是只读的
2.try{
}catch(error){} 不报错执行try里面的代码块,报错执行catch里面的代码块。
前提条件是报错,如果不是报错不能使用
var csss;
try{
csss=window.getComputedStyle(aa,null)
}catch(e){
csss=aa.currentStyle
}
console.log(csss)
总结:
Js解决兼容的方法
1. ||
Var dd=document.documentElement.clientWidth||document.body.clientWidth
2. if()else{}
if(window.getComputedStyle){
csss=window.getComputedStyle(aa,null)
}else{
csss=aa.currentStyle
}
console.log(csss)
3.try{} catch(err){}
必须在报错的条件下,和if else比较性能上比较差,不在万不得以的情况下不使用