首頁 >web前端 >js教程 >jQuery的position()方法詳解_jquery

jQuery的position()方法詳解_jquery

WBOY
WBOY原創
2016-05-16 15:49:391546瀏覽

position()方法的定義與用法:

此方法取得匹配元素相對某些元素的偏移。

傳回的物件包含兩個整數屬性(top和left)的物件。

此方法只對可見元素有效。

語法結構:

$(selector).position()

在教學的開頭之所以說是取得匹配元素相對於某些元素的偏移。很多教程都說方法返回的偏移量是相對於父元素,其實並非完全如此,此方法會將匹配元素以絕對定位方式處理,當然並不是說真的將匹配元素設置為絕對定位。方法的偏移參考原則如下:

1.如果父輩元素中沒有採用定位的(position屬性值為relative、absolute或fixed),那麼偏移量參考物件為視窗。

2.如果父輩元素中有採用定位的,那麼偏移量的參考對象為距離它最近的採用定位的元素,

實例碼:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<style type="text/css">
*{
 margin:0px;
 padding:0px;
}
.father{
 background-color:green;
 width:200px;
 height:200px;
 padding:50px;
 margin-bottom:50px;
 margin-left:100px;
}
.children{
 height:150px;
 width:150px;
 background-color:red;
 line-height:150px;
 text-align:center;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 $(".children").each(function(){
  var text;
  text="left:"+$(this).position().left;
  text+="top:"+$(this).position().top;
  $(this).text(text);
 })
})
</script>
</head>
<body>
<div class="father" style="position:relative">
 <div class="children"></div>
</div>
<div class="father">
 <div class="children"></div>
</div>
</body>
</html>

在上述程式碼中頂部組合,由於父元素採用的是相對定位,那麼所獲得的偏移量就是相對於父元素的。在底部的組合中,由於父元素沒有採用定位,那麼偏移量參考物件就是視窗。

以上所述就是本文的全部內容了,希望大家能夠喜歡。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn