Как мне изменить размер IFRAME? - PullRequest
0 голосов
/ 14 октября 2011

Мне нужно изменить размер междоменного iframe, чтобы он соответствовал содержанию. Так в parent.html я пишу это:

$(function () {
    $('iframe').load(function () {
        var h = null;
        if (!h) {
            if (location.hash.match(/^#h(\d+)/)) {
                h = RegExp.$1;
                $(this).css({
                    'height': h + 'px'
                })
                location.hash = ''
            }

        }
    })
})

и в child.html я пишу это:

$(function () {
    h = 0
    h = $(document).height()
    console.log(h)
    if (top != self) {
        top.location.replace("http://parentdomain.com/#h" + h);
    }
})

работает нормально, когда загружается один раз, но если щелкнуть ссылку в iframe и переменная содержимого, переменная h все еще имеет первое значение. Если я открою child.html в новом окне, var h будет меняться, но не в iframe.

Можно ли исправить?

1 Ответ

0 голосов
/ 14 октября 2011

Действие по изменению размера больше не вызывается.

Если вы щелкнете ссылку в iFrame, вам следует вызвать функцию для родителя или посмотреть событие haschange, которое поддерживается только в более новых браузерах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...