clientHeight , scrollHeight , offsetHeight相信每個人都用過,可是每次用都要查一下到底哪個是文檔大小哪個是視口大小,還有頭疼的兼容問題。

先來官方的了解一下這三個屬性:

  • clientHeight:元素客戶區(qū)的大小,指的是元素內容及其邊框所占據(jù)的空間大?。ń涍^實踐取出來的大多是視口大?。?/p>

  • scrollHeight: 滾動大小,指的是包含滾動內容的元素大?。ㄔ貎热莸目偢叨龋?/p>

  • offsetHeight: 偏移量,包含元素在屏幕上所用的所有可見空間(包括所有的內邊距滾動條和邊框大小,不包括外邊距

看起來解釋很清晰,可是用起來好像沒有這么容易啊,當然,各個瀏覽器的表達方式不同確實要背鍋,不過,當用這些個屬性的時候免不了要面對這兩個東西的差異,document.body和document.documentElement,同樣的屬性用document.body和document.documentElemen表達出來可能會截然不同。

documentElement 和 body 相關說明: 

body是DOM對象里的body子節(jié)點,即 <body> 標簽;

documentElement 是整個節(jié)點樹的根節(jié)點root,即<html> 標簽;

DOM把層次中的每一個對象都

網友評論