服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - jQuery中position()方法用法实例

jQuery中position()方法用法实例

2021-07-14 17:47jQuery教程网 JavaScript

这篇文章主要介绍了jQuery中position()方法用法,实例分析了position()方法的功能、定义及获取匹配元素相对某些元素的偏移量时的使用技巧,需要的朋友可以参考下

本文实例讲述了jQuery中position()方法用法。分享给大家供大家参考。具体分析如下:

此方法获取匹配元素相对某些元素的偏移量。
返回的对象包含两个整型属性(top和left)的对象。
此方法只对可见元素有效。

语法结构:

复制代码 代码如下:
$(selector).position()

 

在教程的开头之所以说是获取匹配元素相对于某些元素的偏移量。很多教程都说方法返回的偏移量是相对于父元素,其实并非完全如此,此方法会将匹配元素以绝对定位方式处理,当然并不是说真的将匹配元素设置为绝对定位。方法的偏移量参考原则如下:

1.如果父辈元素中没有采用定位的(position属性值为relative、absolute或者fixed),那么偏移量参考对象为窗口。
2.如果父辈元素中有采用定位的,那么偏移量的参考对象为距离它最近的采用定位的元素.

实例代码:

 

复制代码 代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.zzvips.com/" />
<title>position()函数-服务器之家</title>
<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>

 

在以上代码中顶部组合,由于父元素采用的是相对定位,那么获取的偏移量就是相对于父元素的。在底部的组合中,由于父元素没有采用定位,那么偏移量参考对象就是窗口。

希望本文所述对大家的jQuery程序设计有所帮助。

本文转自:蚂蚁部落http://www.softwhy.com/

延伸 · 阅读

精彩推荐