欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js獲取控件位置以及不同瀏覽器中的差別介紹

 更新時間:2013年08月08日 16:06:23   作者:  
js獲取控件位置(坐標(biāo)位置)在不同瀏覽器中的差別,在本文為大家詳細(xì)介紹下,感興趣的朋友可以參考下
復(fù)制代碼 代碼如下:

//獲取坐標(biāo)位置
function getpos(e) {
var t=e.offsetTop;
var l=e.offsetLeft;
var height=e.offsetHeight;
while(e=e.offsetParent) {
t+=e.offsetTop;
l+=e.offsetLeft;
}
}

假設(shè) obj 為某個 HTML 控件。
obj.offsetTop 指 obj 距離上方或上層控件的位置,整型,單位像素。
obj.offsetLeft 指 obj 距離左方或上層控件的位置,整型,單位像素。
obj.offsetWidth 指 obj 控件自身的寬度,整型,單位像素。
obj.offsetHeight 指 obj 控件自身的高度,整型,單位像素。

我們對前面提到的“上方或上層”與“左方或上層”控件作個說明。

例如:
復(fù)制代碼 代碼如下:

<div id="tool">
<input type="button" value="提交">
<input type="button" value="重置">
</div>

“提交”按鈕的 offsetTop 指“提交”按鈕距“tool”層上邊框的距離,因?yàn)榫嗥渖线呑罱氖?“tool” 層的上邊框。
“重置”按鈕的 offsetTop 指“重置”按鈕距“tool”層上邊框的距離,因?yàn)榫嗥渖线呑罱氖?“tool” 層的上邊框。

“提交”按鈕的 offsetLeft 指“提交”按鈕距“tool”層左邊框的距離,因?yàn)榫嗥渥筮呑罱氖?“tool” 層的左邊框。
“重置”按鈕的 offsetLeft 指“重置”按鈕距“提交”按鈕右邊框的距離,因?yàn)榫嗥渥筮呑罱氖恰疤峤弧卑粹o的右邊框。


offsetTop 可以獲得 HTML 元素距離上方或外層元素的位置,style.top 也是可以的,二者的區(qū)別是:

一、offsetTop 返回的是數(shù)字,而 style.top 返回的是字符串,除了數(shù)字外還帶有單位:px。
二、offsetTop 只讀,而 style.top 可讀寫。
三、如果沒有給 HTML 元素指定過 top 樣式,則 style.top 返回的是空字符串。

offsetLeft 與 style.left、offsetWidth 與 style.width、offsetHeight 與 style.height 也是同樣道理。

scrollHeight: 獲取對象的滾動高度。
scrollLeft:設(shè)置或獲取位于對象左邊界和窗口中目前可見內(nèi)容的最左端之間的距離
scrollTop:設(shè)置或獲取位于對象最頂端和窗口中可見內(nèi)容的最頂端之間的距離
scrollWidth:獲取對象的滾動寬度
offsetHeight:獲取對象相對于版面或由父坐標(biāo) offsetParent 屬性指定的父坐標(biāo)的高度
offsetLeft:獲取對象相對于版面或由 offsetParent 屬性指定的父坐標(biāo)的計(jì)算左側(cè)位置
offsetTop:獲取對象相對于版面或由 offsetTop 屬性指定的父坐標(biāo)的計(jì)算頂端位置
event.clientX 相對文檔的水平座標(biāo)
event.clientY 相對文檔的垂直座標(biāo)

event.offsetX 相對容器的水平坐標(biāo)
event.offsetY 相對容器的垂直坐標(biāo)
document.documentElement.scrollTop 垂直方向滾動的值
event.clientX+document.documentElement.scrollTop 相對文檔的水平座標(biāo)+垂直方向滾動的量

以上主要指IE之中,F(xiàn)ireFox差異如下:
復(fù)制代碼 代碼如下:

IE6.0、FF1.06+:
clientWidth = width + padding
clientHeight = height + padding
offsetWidth = width + padding + border
offsetHeight = height + padding + border
IE5.0/5.5:
clientWidth = width - border
clientHeight = height - border
offsetWidth = width
offsetHeight = height

(需要提一下:CSS中的margin屬性,與clientWidth、offsetWidth、clientHeight、offsetHeight均無關(guān))

相關(guān)文章

最新評論