jquery offset () и position () - PullRequest
       38

jquery offset () и position ()

2 голосов
/ 17 февраля 2011

Мне нужно получить позицию элемента относительно его родителя.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()

1 Ответ

7 голосов
/ 17 февраля 2011

Aloha,

Добавить позицию: относительная; к вашему стилю контейнера

jsfiddle пример

...