Получение абсолютных координат элемента из iframe
Здравствуйте! Пытаюсь получить координаты элемента картинки с этой страницы https://learn.javascript.ru/drag-and-drop-objects из фрейма "js.cs /" следующим кодом:
document.querySelector('img'); Всё прекрасно работает: ![]() Пробую получить координаты используя функцию getBoundingClientRect: document.querySelector('img').getBoundingClientRect(); В ответе получаю: ClientRect {top: 8, right: 72, bottom: 72, left: 8, width: 64…} Что соответсвует действительности относительно вложенного фрейма "js.cs /". Вопрос заключается в следующем: Как получить координаты этого же элемента относительно самого главного фрейма?(top). И возможно ли это вообще? |
Пытался найти способ как получить координаты самого фрейма но так и не нашел, подскажите пожалуйста как..
Цитата:
|
Пробовал так(запуск из фрейма "js.cx /"):
window.frameElement.getBoundingClientRect(); Как результат: window.frameElement.getBoundingClientRect(); VM8852:1 Uncaught TypeError: Cannot read property 'getBoundingClientRect' of null at <anonymous>:1:20 |
Попрбовал следующее:
document.getElementsByTagName('iframe')[0].getBoundingClientRect(); ClientRect {top: 97.1875, right: 1142, bottom: 377.1875, left: 371, width: 771…} Но нужно запускать скрипт именно из фрейма в котором находится элемент, возможно ли такое? Цитата:
|
Спасибо, но у меня проблема именно в том что этот фрейм находится на другом домене, и мне нужно получить как-то его координаты ...А возможно ли как-то получить внутри этого фрейма id по которому я обращаюсь к нему из главного фрейма в массиве frames?
document.getElementsByTagName('iframe')[0].getBoundingClientRect(); В данном случае вложенный фрейм имеет id = 0. Возможно ли как-то получить эту цифру в самом вложенном фрейме? Или другой вариант который поможет идентифицировать этот фрейм в массиве frames. |
Часовой пояс GMT +3, время: 13:47. |