Jquery .position和offset区别

说明:

   position()获取相对于它最近的具有相对位置(position:relative)的父级元素的距离,
如果找不到这样的元素,则返回相对于浏览器的距离。

  offset()始终返回相对于浏览器文档的距离,它会忽略外层元素

 

1》jQuery中offset()方法:获取或设置指定元素在视窗或文章的偏移位置;

       语法:$(selector).offset(value)

          注:它的value为两个值一个为left一个为top

2》jQuery中position()方法可以取得元素相对于父元素的偏移位置。

     语法:$(selector).position(value)

     注:它的value为两个值一个为left一个为top

案例:

<head>
		<meta charset="UTF-8">
		<title></title>
		<style>
			#outer {
				width: 200px;
				position: relative;  /*相对位置*/
				left: 200px;
				background: bisque;
				height: 200px;
			}
			
			#inner {
				width: 100%;
				height: 50px;
				position: absolute;  /*绝对位置*/
				left: 50px;
				top: 60px;
				background: chocolate;
			}
		</style>

	</head>

	<body>
		<div id="outer">
			
			<div id="inner">
			</div>
		</div>
	</body>

</html>
<script src="js/jquery-3.3.1.js" type="text/javascript" charset="utf-8"></script>

<script type="text/javascript">
	$(function(){
		
		//获取相对于最近的父级(position:relative)的位置
		var vpos = $("#inner").position();
		alert(vpos.left+"\n"+vpos.top);
		
		//返回相对于浏览器文档的距离
		var voff = $("#inner").offset();
		alert(voff.left+"\n"+voff.top);
		
	})
</script>

效果:

position()

offset()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值