關(guān)于尺寸:
? 關(guān)于尺寸問題分為兩種情況,一種是在body下的尺寸。另一種是在div下的尺寸。
在div下:
? clienttWidth/Height:是對(duì)象內(nèi)容的寬高。
? clienttWidth/Height:=自身的寬高+padding*2-滾動(dòng)軸寬度(mac系統(tǒng)不需要,滾動(dòng)軸不占寬度)
? clientTop:=border-top的寬。
? clientLeft:=border-left的寬。
? offsetWidth/Height:是對(duì)象的自身的寬高,包括滾動(dòng)條、邊線、padding,值會(huì)隨著內(nèi)容的輸入而不斷改變。?
? offsetWidth/Height=自身的寬高+padding*2+border*2=clientWidth/Height+border*2(如有滾動(dòng)條時(shí)加上滾動(dòng)條,mac系統(tǒng)除外)?
? offsetLeft:對(duì)象距父元素或?yàn)g覽器窗口的左邊距離。
? offsetTop: 對(duì)象距父元素或?yàn)g覽器窗口的上邊距離。
? offsetParent為定位的父元素,未定位時(shí)默認(rèn)以body為父元素。
在ie6/7中:offsetLeft=offsetParent的padding-left+當(dāng)前元素的margin-left
在ie8/9/9即chrome中::offsetLeft=offsetParent的padding-left+offsetParent的margin-left+當(dāng)前元素的margin-left+offsetParent的border-left
在FireFox中:offsetLeft=offsetParent的padding-left+offsetParent的margin-left+當(dāng)前元素的margin-left
? scrollWidth/Height:網(wǎng)頁實(shí)際內(nèi)容的寬高(包括帶滾動(dòng)條的隱蔽的地方)。
? scrollWidth/Height:所有瀏覽器是一致的。scrollHeight/Width=自身的寬高+padding*2。?
scrollTop:設(shè)置或獲取位于對(duì)象最頂端和父元素中可見內(nèi)容的最頂端之間的距離(即網(wǎng)頁被卷去的高)
在body下:
clientWidth/Height=自身的寬高+padding*2-滾動(dòng)軸寬度(mac系統(tǒng)不需要,滾動(dòng)軸不占寬度)
offsetWidth/Height=自身的寬高+padding*2+border*2=clientWidth/Height+border*2(如有滾動(dòng)條時(shí)加上滾動(dòng)條,mac系統(tǒng)除外)?
scrollWidth/Height:
1.給定寬高小于瀏覽器窗口時(shí)。
? scrollWidth/Height:通常時(shí)瀏覽器的寬高。
2.給定寬高大于瀏覽器窗口,且內(nèi)容小于給定寬高時(shí)。
? scrollWidth/Height:=給定的寬高+其所有的padding、margin和border(寬是(上下)高是(左右))
3.給定寬高大于瀏覽器窗口,且內(nèi)容大于給定寬高時(shí)。
? scrollWidth/Height:=內(nèi)容寬度(大于給定寬高的那個(gè)內(nèi)容)+其所有的padding、margin和border
獲取可視區(qū)域:
? document.documentElement.clientWidth|| document.body.clientWidth||window.innerWidth?
? document.documentElement.clientHeight|| document.body.clientHeight||window.innerHeight
獲取網(wǎng)頁卷進(jìn)去的高度:
var scrollTop= document.documentElement.scrollTop || window.pageYOffset(可選) || document.body.scrollTop
window.pageXOffset/pageYoffset 整數(shù)只讀屬性。表示X/Y軸滾動(dòng)條向右/下滾動(dòng)過的像素?cái)?shù)(表示文檔向右/下滾動(dòng)過的像素?cái)?shù))。IE不支持該屬性,使用body元素的scrollLeft屬性替代。
瀏覽器內(nèi)部的寬: innerWidth
瀏覽器內(nèi)部的高: innerHeight
瀏覽器外部的寬: outerWidth
瀏覽器外部的高: outerHeight
網(wǎng)頁可見區(qū)域?qū)挘?document.body.clientWidth;? (或innerWidth )
網(wǎng)頁可見區(qū)域高: document.body.clientHeight; (或innerHeight)
網(wǎng)頁可見區(qū)域?qū)挘?document.body.offsetWidth?? (包括邊線的寬);
網(wǎng)頁可見區(qū)域高: document.body.offsetHeight? (包括邊線的寬);
網(wǎng)頁正文全文寬: document.body.scrollWidth;
網(wǎng)頁正文全文高: document.body.scrollHeight;
網(wǎng)頁被卷去的高: document.body.scrollTop;
網(wǎng)頁被卷去的左: document.body.scrollLeft;
屏幕分辨率的高: window.screen.height;
屏幕分辨率的寬: window.screen.width;
瀏覽器頂端到屏幕頂端: window.screenTop;(在IE,Opera中Y軸為0時(shí)顯示的是頁面可見區(qū)域的距離,即瀏覽器工具欄的像素高度)
瀏覽器左部到屏幕左部: window.screenLeft;
屏幕可用工作區(qū)高度: window.screen.availHeight;
屏幕可用工作區(qū)寬度:window.screen.availWidth;
?坐標(biāo)用法:
clientX/clientY 相對(duì)于瀏覽器(可視區(qū)左上角0,0.不包括頂部的標(biāo)題欄。)的坐標(biāo)?
offsetX/offsetY 相對(duì)于事件源左上角(0,0)的坐標(biāo)
screenX/screenY 相對(duì)于設(shè)備屏幕左上角(0,0)的坐標(biāo)。
當(dāng)是window.screenX/screenY時(shí)。screenX/screenY等于screenLeft/screenTop。
pageX/pageY???? 相對(duì)于整個(gè)網(wǎng)頁左上角(0,0.包括頂部的標(biāo)題欄)的坐標(biāo)
x/y???????????? 在IE瀏覽器中如果進(jìn)行動(dòng)態(tài)定位時(shí):相對(duì)于最內(nèi)容包容元素的左上角(0,0)的坐標(biāo)
在IE瀏覽器中未進(jìn)行動(dòng)態(tài)定位時(shí)x/y =clientX/clientY。
在其他瀏覽器中始終x/y =clientX/clientY。