Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
15 Май 2023
2 мин
3908

Получение позиции (X,Y) HTML элемента

При работе с веб-разработкой на JavaScript часто возникает необходимость получения координат (X, Y) HTML элементов. Это может быть полезно во множестве ситуаций,

При работе с веб-разработкой на JavaScript часто возникает необходимость получения координат (X, Y) HTML элементов. Это может быть полезно во множестве ситуаций, например, при создании интерактивных элементов, таких как перетаскиваемые блоки или всплывающие подсказки.

Допустим, есть HTML элементы типа img или div, и требуется определить их текущее положение на странице. Вот пример такого элемента:

<div id="myDiv">Это мой div</div>

Как получить координаты этого элемента на JavaScript?

Станьте веб-разработчиком с нуля за 15 месяцев на курсе онлайн-университета Skypro. Преподаватели — практикующие эксперты из VK, «Альфа-Банка», Skyeng и других крупных компаний. В программе нет лишней теории, зато много практических заданий, а результаты курсовых можно положить в портфолио. Специалисты центра карьеры помогут с резюме, сопроводительными письмами и собеседованиями.

Использование свойства offsetTop и offsetLeft

Наиболее простой и распространенный способ – это использование свойств offsetTop и offsetLeft. Они возвращают расстояние от верхнего края (offsetTop) или левого края (offsetLeft) текущего элемента до ближайшего родительского элемента (или до самого body, если родительских элементов нет).

var element = document.getElementById('myDiv');
var xPosition = element.offsetLeft;
var yPosition = element.offsetTop;

В этом случае xPosition и yPosition будут содержать координаты X и Y соответственно.

Однако стоит отметить, что этот метод не учитывает прокрутку страницы. Если страница прокручена, то реальное положение элемента на странице будет отличаться.

На курсе Skypro «Веб-разработчик» освоите JavaScript, GitHub, Tilda, Postman, HTML, CSS и другие программы и инструменты, научитесь решать реальные задачи разработчика и работать в команде. Все учебные проекты можно положить в портфолио и устроиться на работу по новой специальности еще в процессе обучения.

Использование метода getBoundingClientRect

Более надежный способ определения позиции элемента – это использование метода getBoundingClientRect. Этот метод возвращает объект, содержащий информацию о размере элемента и его позиции относительно окна просмотра.

var element = document.getElementById('myDiv');
var rect = element.getBoundingClientRect();
var xPosition = rect.left;
var yPosition = rect.top;

В этом случае xPosition и yPosition будут содержать координаты X и Y соответственно, и они будут учитывать прокрутку страницы.

В заключение стоит отметить, что оба метода позволяют достаточно легко и быстро определить положение HTML элемента на странице. Выбор метода зависит от конкретной ситуации и задачи.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий