1.js操作css的樣式 div.style.width="100px"在div標簽內我們添加了一個style屬性,並設定了width值。這種寫法會給標簽帶來大量的style屬性,跟實際項目不符。 我們沒有讓css和html分離 所以如果為了獲取css樣式 window.getComputedSty ...
1.js操作css的樣式
div.style.width="100px"在div標簽內我們添加了一個style屬性,並設定了width值。這種寫法會給標簽帶來大量的style屬性,跟實際項目不符。
我們沒有讓css和html分離
所以如果為了獲取css樣式
window.getComputedStyle()獲取經過電腦計算所有的屬性,就是渲染出來的都是經過計算的。
getComputedStyle()第一個參數是當前元素,第二個一般我們寫null
並且這個方法是只讀
Ie6-8不支持這個用法,ie的是用currentStyle
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比較性能上比較差,不在萬不得已的情況下不適用
只讀 可寫
只讀:只能獲取不能修改
可寫:可以修改的
null和undefined的區別
null和undefined都表示沒有值
null是這個東西是天生存在的但是沒賦值
如果我們需要清楚瀏覽器變數的記憶體需要賦值null
比如
var aa=document.getElementById("aa")
console.log(aa.parentNode.parentNode.parentNode.parentNode) null
Undefined 這個對象壓根就不存在的是人為定義並且沒賦值
1. var a;undefined
2.div.aa undefined
元素節點的樹狀圖
document>documentelement>body>tagName
offsetLeft/offset 結合運動
滾動輪播