getBoundingClientRect 函数

本文介绍了一个用于获取页面元素位置的函数,并通过实例演示了如何使用此函数获取元素的top、bottom、left和right属性值,进而计算出元素在页面上的具体位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前没有听说过这个函数,于是查了相关资料,该函数获取元素在当前页面的位置,返回结果为一个ClientRect对象。

这个对象有top、bottom、left、right几个属性。

top:元素顶部距离页面顶部的大小。

bottom:元素底部距离页面顶部的大小。

left:元素左部距离页面左部的大小。

right:元素右部距离页面左部的大小

 

举例

代码

 

<p id="box" style="margin:10px 0 0 50px; width:100px; height:30px; background:#ccc;"> </p>
<script type="text/javascript">
  var ob=document.getElementById("box").getBoundingClientRect();  
  alert("上:"+ob.top+"下:"+ob.bottom+"左:"+ob.left+"右:"+ob.right);
</script>

 

 

 

运行结果

 

代码

<p id="box" style="margin:10px 0 0 50px; width:100px; height:30px; background:#ccc;"> </p>
<P id="two" style="width:500px;height:200px;text-align:center">请点击这里</p>
<script type="text/javascript"> 
  document.getElementById("two").onclick=function(){
     ob=document.getElementById("box").getBoundingClientRect();
     alert("上:"+ob.top+"下:"+ob.bottom+"左:"+ob.left+"右:"+ob.right);
   };
</script>

 

 运行结果

 

备注

getBoundingClientRect().left+document.documentElement.scrollLeft 得到元素位于页面的X坐标
getBoundingClientRect().top+document.documentElement.scrollTop 得到元素位于页面的Y坐标

转载于:https://www.cnblogs.com/blackwood/archive/2012/08/22/2650995.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值