2012-06-28 4 views
0

В этом проблема! У меня есть iframe, который загружает внешний веб-сайт. Я хочу, чтобы iframe изменял размер до 100% в зависимости от высоты содержимого, так что я не получаю полосу прокрутки. Установка высоты iframe до 100% не работает.Iframe resize и межсайтовый скриптинг

Я придумал два решения:

  1. Установите свойство document.domain на обоих концах одной и той же области, , который дает доступ к контенту IFrame для родительского окна. Метод изменения размера может быть инициирован изнутри iframe.
  2. Используйте HTML5 postMessage API для принятия соответствующих мер. Я использую для связи между двумя iframes.

Оба эти подхода сложны. Есть ли более простой подход к этой проблеме?

ответ

0

Вы можете вставить другой iframe в свой iframe. Если источник этого iframe находится из одного домена, протокола и порта в качестве верхнего уровня iframe, то он может получить к нему доступ через parent.parent

0

Я столкнулся с той же проблемой в прошлом году и нашел решение, которое сработало для меня на этом блог: http://solidgone.org/Set-IFRAME-height-based-on-size-of-remotely-loaded-content

обновленный вариант этого метода можно найти в его последующей статье: http://solidgone.org/Redux-Set-IFRAME-height-based-on-size-of-remotely-loaded-content

Как Джек описывает, реализация требует встроенного IFRAME в вашу страницу с источником одного и того же родительского домена ,

У меня была небольшая проблема в FF. Решение можно найти в комментариях к следующей статье.

Надеюсь, это поможет!

Смежные вопросы