国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JS OffsetParent屬性深入解析

2024-05-06 15:58:46
字體:
來源:轉載
供稿:網友
本篇文章要是對JS中的OffsetParent屬性進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所 幫助

offsetParent屬性返回一個對象的引用,這個對象是距離調用offsetParent的元素最近的(在包含層次中最靠近的),并且是已進行過CSS定位的容器元素。 如果這個容器元素未進行CSS定位, 則offsetParent屬性的取值為根元素(在標準兼容模式下為html元素;在怪異呈現模式下為body元素)的引用。 當容器元素的style.display 被設置為 "none"時(譯注:IE和Opera除外),offsetParent屬性 返回 null。

句法:
parentObj = element.offsetParent

變量:
· parentObj 是一個元素的引用,當前元素的偏移量在其中計算。

復制代碼 代碼如下:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<script type="text/javascript" language="JavaScript">
  function offset_init() {
  var pElement = document.getElementById("sonObj");
  parentObj = pElement.offsetParent;
  alert(parentObj.tagName);
    }
</script>
</head>
<body>
<div>
<p>測試OffsetParent屬性</p>
</div>
</body>
</html>


測試結果:
Firefox3:"BODY"
Internet Explorer 7:"BODY"
Opera 9.51:"BODY"
Chrome 0.2:"BODY"
Safari 3:"BODY

結論:
當某個元素及其DOM結構層次中元素都未進行CSS定位時(absolute或者relative)[或者某個元素進行CSS定位時而DOM結構層次中元素都未進行CSS定位時],則這個元素的offsetParent屬性的取值為根元素。更確切地說,這個元素的各種偏移量計算(offsetTop、offsetLeft等)的參照物為Body元素。(其實無論時標準兼容模式還是怪異模式,根元素都為Body元素)

測試代碼2

復制代碼 代碼如下:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<style type="text/css">
#parent {
    position: absolute; <!-- position:relative; -->
    left: 25px;
    top: 188px;
    border: 1px solid black;
}
</style>
<script type="text/javascript" language="JavaScript">
    function offset_init() {
var pElement = document.getElementById("sonObj");
parentObj = pElement.offsetParent;
alert(parentObj.tagName);
    }
</script>
</head>
<body>
<div>div測試代碼
<p>測試OffsetParent屬性</p>
</div>
</body>
</html>


測試結果:
Firefox3:"DIV"
Internet Explorer 7:"DIV"
Opera 9.51:"DIV"
Chrome 0.2:"DIV"
Safari 3:"DIV"

結論:
當某個元素的父元素進行了CSS定位時(absolute或者relative),則這個元素的offsetParent屬性的取值為其父元素。更確切地說,這個元素的各種偏移量計算(offsetTop、offsetLeft等)的參照物為其父元素

測試代碼3

復制代碼 代碼如下:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<style type="text/css">
#Grandfather {
    position: relative;
    left: 25px;
    top: 188px;
    border: 1px solid black;
}
</style>
<script type="text/javascript" language="JavaScript">
function offset_init() {
var pElement = document.getElementById("sonObj");
parentObj = pElement.offsetParent;
alert(parentObj.tagName);
    }
</script>
</head>
<body>
<h1>
<div>
<p>測試OffsetParent屬性</p>
</div>
</h1>
</body>
</html>


測試結果:
Firefox3:"H1"
Internet Explorer 7:"H1"
Opera 9.51:"H1"
Chrome 0.2:"H1"
Safari 3:"H1"

結論:
當某個元素及其父元素都未進行CSS定位時(absolute或者relative),則這個元素的offsetParent屬性的取值為在DOM結構層次中距離其最近,并且已進行了CSS定位的元素。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 乳山市| 周口市| 阆中市| 确山县| 城市| 攀枝花市| 遂宁市| 噶尔县| 绍兴县| 从化市| 贡嘎县| 宝坻区| 凌源市| 隆林| 油尖旺区| 麦盖提县| 藁城市| 双流县| 芜湖县| 延长县| 怀仁县| 卫辉市| 九寨沟县| 利辛县| 扶沟县| 长岛县| 金华市| 大余县| 英山县| 紫阳县| 大埔县| 乐安县| 太谷县| 西乌珠穆沁旗| 从江县| 扬州市| 柘城县| 敦煌市| 秭归县| 钟山县| 铜川市|