先簡(jiǎn)單瞅瞅他們!賊恐怖漱病!
搞起來买雾!
div4? div3 div2? div? 依次設(shè)置height 700px, 550px,600px,500px,1000px
除了test4這個(gè)div外,其他的div均有設(shè)置border=1px把曼;
function justAtest()
{
var test=document.getElementById("test");
var test2=document.getElementById("test2");
var test3=document.getElementById("test3");
var test4=document.getElementById("test4");
alert(test4.style.height);
alert(test3.style.height);
alert(test2.style.height);
alert(test.style.height);
alert(document.body.style.height);
}
height :
其實(shí)Height高度跟其他的高度有點(diǎn)不一樣,在javascript中它是屬于對(duì)象的style對(duì)象屬性中的一個(gè)成員,它的值是一個(gè)字符串類型的,而另外三個(gè)高度的值是int類型的,它們是對(duì)象的屬性.因此這樣document.body.height就會(huì)提示undenifine,而必須寫成document.body.style.height
上面的腳本將依次彈出700px,550px,600px,500px
height是最簡(jiǎn)單的,不必去考慮是否有滾動(dòng)條及邊框等.因此也不做多解釋了.
function justAtest()
{
var test=document.getElementById("test");
var test2=document.getElementById("test2");
var test3=document.getElementById("test3");
var test4=document.getElementById("test4");
alert(test4.style.clientHeightt);
alert(test3.style.clientHeight);
alert(test2.style.clientHeight);
alert(test.style.clientHeight);
alert(document.body.style.clientHeight);
}
運(yùn)行后火狐的結(jié)果為:700,550,583,483,1000
IE的結(jié)果為:700 ,550,583,483,1000
IE與火狐下的運(yùn)行結(jié)果是一致的.下面來看下clientHeight的定義.
clientHeight:
可見區(qū)域的高度,不包括boder的高度,如果區(qū)域內(nèi)帶有滾動(dòng)條,還應(yīng)該減去豎向滾動(dòng)條不可用的高度,正常的是17px,其實(shí)就是滾動(dòng)條的可滾動(dòng)的部分了,其實(shí)clientHeight與height的高度差不多,如果不帶滾動(dòng)條的話他們的值都是一樣的,如果帶有滾動(dòng)條的話就會(huì)比height值少17px;火狐與IE下均為一致.
接著我們來看scrollHeight
function justAtest()
{
var test=document.getElementById("test");
var test2=document.getElementById("test2");
var test3=document.getElementById("test3");
var test4=document.getElementById("test4");
alert(test4.style.scrollHeight);
alert(test3.style.scrollHeight);
alert(test2.style.scrollHeight);
alert(test.style.scrollHeight);
alert(document.body.style.scrollHeight);
}
運(yùn)行后火狐的結(jié)果為:700,552,700,602,1002
IE的結(jié)果為: 15, 15 , 700,602, 552
scrollHeight:
這個(gè)屬性就比較麻煩了,因?yàn)樗鼈冊(cè)诨鸷鶬E下簡(jiǎn)直差太多了..
在火狐下還很好理解,它其實(shí)就是滾動(dòng)條可滾動(dòng)的部分還要加上boder的高度還要加上橫豎向滾動(dòng)條不可用的高度,與clientHeight比起來,多個(gè)border的高度跟橫向滾動(dòng)條不可用的高度.
在IE中 scrollHeight確是指這個(gè)對(duì)象它所包含的對(duì)象的高度加上boder的高度和marging,如果它里面沒有包含對(duì)象或者這個(gè)對(duì)象的高度值未設(shè)置,那么它的值將為15
最后我們來看offsetHeight
function justAtest()
{
var test=document.getElementById("test");
var test2=document.getElementById("test2");
var test3=document.getElementById("test3");
var test4=document.getElementById("test4");
alert(test4.style.offsetHeight);
alert(test3.style.offsetHeightt);
alert(test2.style.offsetHeight);
alert(test.style.offsetHeight);
alert(document.body.style.offsetHeight);
}