图解DOM中关于对象范围的属性
以Height為例,相關的屬性有這些:
clientHeight:獲取對象的高度,不計算任何邊距、邊框、滾動條或可能應用到該對象的補白。
offsetHeight:對象底與父對象的坐標的高度,會計算到上面clientHeight不計算的那些東東,所以大部分情況下,offsetHeight與clientHeight相等,也有不少情況比clientHeight多那么幾px,大家可以用document.body做個測試。
如果對象超過容器的height,那么會出現(xiàn)scrollbar,那么我們就要考慮以下幾個屬性了:
scrollTop:對象的實際頂端(這個頂端可能已經不可見了)和容器頂端的值。
scrollHeight:對象全部展開的高度。(相當于你的身高,你量的時候應該是伸得最直了吧。)
如果有滾動的情況,那么,當滾動到最底的時候,clientHeight + scrollTop = scrollHeight;此處請使用clientHeight,而不是offsetHeight。
我們一般設對象的高度,會在HTML中寫style="height:100px;",而偏偏obj.style.height和offsetHeight一樣包涵邊距、邊框、滾動條或可能應用到該對象的補白,所以我們要一個對象全部展開,要這樣寫obj.style.height = obj.scrollHeight + ( obj.offsetHeight - obj.clientHeight ),你就直接寫obj.style.height = obj.scrollHeight的話,有時空間還是不夠的,就好像你身高1.70m,你的房子也只有1.70m的話,你要是穿個鞋什么你就進不去了,當然,如果你沒穿鞋,你也可以進去。有時我們會要一個對象自適應高度,如彈出一個合適大小的窗口,你可以考慮這么做,resizeTo(1,1);再用上面寫的那種語句,當然,你要引用的是body的那套屬性。
對于寬、左、右,都一樣。
都是基礎的東東,但有點易混淆,我只不過想說得更易懂點,請大家指正,不知道有沒有人喜歡這些“下里巴人”的東西,有,則請頂一下,“陽春白雪”但愿通過努力,也能寫出。:)
一連寫完“Hashtable,挺爽的一個東西,大家都用爛了吧,我再畫蛇添足一下?!焙捅疚?#xff0c;已是快一點,有點累,沒什么含金量,大家權當灌水。
總結
以上是生活随笔為你收集整理的图解DOM中关于对象范围的属性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: yum升级rhel5
- 下一篇: 2008高考零分作文---大事与小事