平時寫js的時候,有時候會遇到這樣的狀況,須要去計算元素或者屏幕的寬度,再進行不一樣的處理,可是寬度真的有很多,很容易搞混,特此總結下,也但願你們親測下,這樣比較有體會,記得牢固些。cli
一、scrollWidth:指的是元素的內容寬度,會隨着內容撐大,不包邊線寬度。scroll
二、clientWidth:指的是元素的可視區域的寬度,不會隨着內容撐大,不包邊線寬度,若是不出現橫向滾動條,則等於scrollWidth,若是出現,則小於scrollWidth。總結
三、offectWidth:指的是元素的實際寬度,包含邊線寬度,和CSS關係較大。滾動條
由上可知:滾動
元素出現橫向滾動條,clientWidth < offectWidth < scrollWidth
元素不出現橫向滾動條,clientWidth = scrollWidth < offectWidth
另外提下,window.screen.width計算屏幕寬度很方便。