麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > JS > 正文

獲取任意Html元素與body之間的偏移距離 offsetTop、offsetLeft (For:

2024-09-06 12:44:08
字體:
來源:轉載
供稿:網友
問題:
如何取到頁面中任意某個Html元素與body元素之間的偏移距離?

offsetTop和offsetLeft 這兩個屬性,IE 、Opera和Firefox對它倆的解釋存在差異:
IE5.0+ 、Opera8.0+: offsetTop和offsetLeft 都是相對父級元素
Firefox1.06: offsetTop和offsetLeft 都是相對于body元素

因此:
(1)在FF下直接使用offsetTop和offsetLeft,就可以取到頁面中任意某個Html元素與body元素之間的偏移距離;
(2)在IE、Opera下則比較麻煩:
需要首先取到該Html元素與body元素之間所有Html元素,計算各自的offsetTop和offsetLeft,然后再累加。
即:從該Html元素開始,遍歷至body,在遍歷的過程中,如果某個HTML元素的CSS設置了borderWidth的話,則borderWidth不是算在offsetTop和offsetLeft內的--因此在遍歷的過程中,還需要累加上:
obj.currentStyle.borderLeftWidth、obj.currentStyle.borderTopWidth

下面這段測試代碼已經解決上述問題,兼容IE5、FF1,但在Opera8下無效

實例代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312">
<head>
<head>
<title> 代碼實例:獲取任意Html元素與body之間的偏移距離 offsetTop、offsetLeft </title>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<meta name="author" content="楓巖,[email protected]">
<style type="text/css" media="all">
body,p {margin:0;padding:0;font-size:12px;}
body {float:left;width:100%;}
ul,ul li {margin:0;padding:0;list-style:none;padding:0;}
ul li input {border:1px solid #ccc;}
#Bd {
background:#FFE8D9;
float:left;
padding:20px;
border:10px solid #f90;/*該值在IE下還是取不到*/
width:100%;
}
#BS {
padding:20px;
float:left;
background:#58CB64;
}
#BS ul {border:20px solid #DDF1D8;}
#BM {
margin-top:100px;
float:right;
width:300px;
background:#fff;
}
</style>
<script type="text/javascript">
var w3c=(document.getElementById)? true:false;
var agt=navigator.userAgent.toLowerCase();
var ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1) && (agt.indexOf("omniweb") == -1));
var ie5=(w3c && ie)? true : false;
var ns6=(w3c && (navigator.appName=="Netscape"))? true: false;
var op8=(navigator.userAgent.toLowerCase().indexOf("opera")==-1)? false:true;

function Obj(o){
 return document.getElementById(o)?document.getElementById(o):o;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美国产一区二区三区激情无套 | 亚洲精品wwww | 国产免费高清在线视频 | 4p嗯啊巨肉寝室调教男男视频 | 欧美五月婷婷 | 国产激情精品一区二区三区 | 欧美一级黄色网 | 小视频免费在线观看 | 一区二区免费 | 国产成人精品二区 | 成年免费视频黄网站在线观看 | 国产亚洲精品久久久久久网站 | 亚洲精品无码不卡在线播放he | 久久国产乱子伦精品 | 国产精品7区 | 国产69久久久 | 国产毛片自拍 | 天天透天天狠天天爱综合97 | 国产精品久久久久久影院8一贰佰 | 午夜视频色| 免费中文视频 | 欧美精品一区二区久久久 | 免费观看视频在线 | 极色品影院| 国产一级免费片 | 国产精品久久久久国产精品三级 | 欧美一级棒 | 国产999精品久久久久 | 久久久久亚洲a | 最新黄色av | 国产亚洲精品久久久久久久 | 欧美成人精品欧美一级 | 欧洲精品色 | 免费在线观看一级片 | 国产亚洲精品久久久久久大师 | 女人裸体让男人桶全过程 | 成人毛片100免费观看 | 午夜九九九 | 国产精品久久久久久久久久iiiii | 欧美日韩后 | 看免费毛片|