Получите позицию отделения/тега span

101
задан alex 18 March 2013 в 00:12
поделиться

2 ответа

Эта функция скажет Вам x, y положение элемента относительно страницы. В основном необходимо циклично выполниться через родителей всего элемента и добавить их смещения вместе.

function getPos(el) {
    // yay readability
    for (var lx=0, ly=0;
         el != null;
         lx += el.offsetLeft, ly += el.offsetTop, el = el.offsetParent);
    return {x: lx,y: ly};
}

Однако, если Вы просто хотели x, y положение элемента относительно его контейнера, тогда все, которое Вам нужно:

var x = el.offsetLeft, y = el.offsetTop;

Для помещения элемента непосредственно ниже этого необходимо будет также знать его высоту. Это хранится в offsetHeight/offsetWidth свойстве.

var yPositionOfNewElement = el.offsetTop + el.offsetHeight + someMargin;
97
ответ дан nickf 24 November 2019 в 04:36
поделиться

Можно назвать метод getBoundingClientRect() на ссылке на элемент. Тогда можно исследовать top, left, right и/или bottom свойства...

var offsets = document.getElementById('11a').getBoundingClientRect();
var top = offsets.top;
var left = offsets.left;

При использовании jQuery, можно использовать более сжатый код...

var offsets = $('#11a').offset();
var top = offsets.top;
var left = offsets.left;
175
ответ дан alex 24 November 2019 в 04:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: