1.JS 操作 CSS 样式
div.style.width="100px", 在 div 标签内我们添加了一个 style 属性, 并设定了 width 值. 这种写法会给标签带来大量的 style 属性, 跟实际项目是不符.
我们没让 CSS 和 html 分离.
所以如果是为了获取 CSS 样式
Windows.getComputedStyle() 获取经过计算机计算的所有的属性
就是只要渲染出来的都是经过计算的.
getComputedStyle() 第一个参数是当前元素, 第二个一般我们写 null
并且这个方法是只读,
ie6-8 不支持这个用法, IE 的是用 currentStyle
2.try{
}catch(error){} 不报错执行 try 里面的代码块, 报错执行 catch 里面的代码块.
前提条件是不报错, 如果不是报错不能使用
- var csss;
- try{
- csss=Windows.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(Windows.getComputedStyle){
- csss=Windows.getComputedStyle(aa,null)
- }else{
- csss=aa.currentStyle
- }
- console.log(csss)
- 3.try{}catch(err){}
必须在报错的条件下, 和 if else 比较性能上比较差, 不在万不得以的情况下不使用
只读 可写
只读: 只能获取不能修改
可写: 可以修改的
null 和 undefined 的区别
null 和 undefined 都表示没有值
null 是这东西天生存在的但是没有赋值
比如
- var aa=document.getElementById("aa")
- console.log(aa.parentNode.parentNode.parentNode.parentNode) null
undefined 这个东西压根就不存在的事认为定义的并且没有赋值.
- var a;undefined
- div.aa undefined
元素节点的树状图
document>documentElement>body>tagName
offsetLeft/offsetTop 结合运动
滚动轮播
来源: http://www.bubuko.com/infodetail-2848249.html