• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • position()

    获取匹配元素中第一个元素的当前坐标,相对于offset parent的坐标。(译者注:offset parent指离该元素最近的而且被定位过的祖先元素)

    .position()
    • 这个方法不接受任何参数。

    .position()方法可以取得当前元素(包含其 margin 边距)相对于父元素(特别是其 padding 填充,不包括 margin 边距和 border 边框)的偏移位置。与.offset()不同,.offset()是获得该元素相对于documet的当前坐标当把一个新元素放在同一个容器里面另一个元素附近时,用.position()更好用。

    .position()返回一个包含topleft属性的对象.

    注意:jQuery不支持获取隐藏元素的偏移坐标。也不支持计算设置在<html>文档元素上的边距(margin)。

    例子

    获取第一个段落的坐标位置:

    <!DOCTYPE html>
    <html>
    <head>
      <style> 
      div { padding: 15px;}
      p { margin-left:10px; }
      </style>
      <script src="https://www.lanmper.cn/static/js/jquery-3.5.0.js"></script>
    </head>
    <body>
     
    <div>
      <p>Hello</p>
    </div>
    <p></p>
     
    <script>
    var p = $("p:first");
    var position = p.position();
    $("p:last").text( "left: " + position.left + ", top: " + position.top );
    </script>
     
    </body>
    </html>
    

    Hello

    p

    下篇:offset()