@Senseich

Как получить высоту фрейма подгружаемого с другого домена?

Всем привет! Мне подгружаю форму битрикс 24 по клику на кнопку с классом b24-web-form-popup-btn-3. Подгружается фрейм с формой. Мне нужно получить высоту этого фрейма iframe#bx_form_iframe_3.

Пробую делать так:

$('.b24-web-form-popup-btn-3').on('click', function() {

        $('iframe#bx_form_iframe_3').load(function() {

            eh = $('iframe#bx_form_iframe_3').contents().find('html').height();
            console.log(eh);

        });
    });

Но возвращается Null.
Пока единственным решением нашел, поиск высоты блока в который завернут фрейм, и то с использованием setTimeout в 1 секунду, т.к. фрейм грузится не моментально, соответственно высоту выдает не верную без задержки.

Но хотелось бы без setTimeout, мне кажется это "костыль".
  • Вопрос задан
  • 113 просмотров
Решения вопроса 1
y0u
@y0u Куратор тега JavaScript
dev
Если у вас есть доступ к коду iframe с другого домена, то можно использовать Window.postMessage() для общения между iframe и вашей страницей.

Если доступа к коду нет, то адекватно - никак.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы