jquery offset() 和position()

发布于 2024-10-18 02:23:36 字数 1197 浏览 7 评论 0原文

我需要获取元素相对于其父元素的位置。 position() 应该可以做到这一点,但看起来并没有。

<!DOCTYPE html>
<html>
<head>
  <style>

  body{padding: 0px; margin: 0px;}
  div { margin-left: 200px; padding: 30px; border: 1px solid red;}
  p { margin: 0px; padding: 0px; border: 1px solid black }
  </style>
  <script src="http://code.jquery.com/jquery-1.5.js"></script>

    <script>
        $(document).ready(function() {

            var p = $("p.paragraf");
            var position = p.offset();
            $("p.zadnji").text( "left: " + position.left + ", top: " + position.top );

        });
    </script>  

</head>
<body>

<div class="container">
  <p class="paragraf">Hello</p>
</div>
<p class="zadnji"></p>

</body>
</html>

结果:

左:231,上:31

如果 p.paragraf 位于 #container 内,则 #container 应该是 p.paragraf< 的父级/代码>。如果#container的内边距设置为30px,那么p.paragraf的左侧和顶部位置不应该都是30px吗?

我尝试了 offset() 但它给出了与 position() 相同的结果

I need to get position of element relative to its parent. position() is suppose to do that but it looks like it doesn't.

<!DOCTYPE html>
<html>
<head>
  <style>

  body{padding: 0px; margin: 0px;}
  div { margin-left: 200px; padding: 30px; border: 1px solid red;}
  p { margin: 0px; padding: 0px; border: 1px solid black }
  </style>
  <script src="http://code.jquery.com/jquery-1.5.js"></script>

    <script>
        $(document).ready(function() {

            var p = $("p.paragraf");
            var position = p.offset();
            $("p.zadnji").text( "left: " + position.left + ", top: " + position.top );

        });
    </script>  

</head>
<body>

<div class="container">
  <p class="paragraf">Hello</p>
</div>
<p class="zadnji"></p>

</body>
</html>

Result:

left: 231, top: 31

If p.paragraf is inside #container then #container should be parent to p.paragraf. If padding of #container is set to 30px, shouldn't both left and top position of p.paragraf be 30px?

I tried offset() but it gives the same result as position()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

偏爱你一生 2024-10-25 02:23:36

阿罗哈,

添加位置:相对;到您的容器样式

jsfiddle 示例

Aloha,

Add position: relative; to your container style

jsfiddle example

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文