Определить, когда отображается iframe

0

В настоящее время мой сайт внедряется внутри другого веб-сайта. Но проблема в том, что я хочу знать, когда будет показан мой iframe, чтобы он мог сделать какой-то скрипт.

Что-то похожее на это:

<div id="wrapper">
  <iframe id="page1">
       <!-- MY PAGE 1 CODE GOES HERE-->
  </iframe>
  <iframe id="page2">
       <!-- MY PAGE 2 CODE GOES HERE-->
  </iframe>
  <iframe id="page3">
       <!-- MY PAGE 3 CODE GOES HERE-->
  </iframe>
</div>

Проблема здесь, обертка загружает весь мой встроенный код в одно и то же время, затем скрыть все и показать только одно. Затем, когда пользователь взаимодействует, он покажет другие страницы.

Моя проблема: мне нужно знать, когда обертка отображает мою страницу 1/page 2/page 3, чтобы можно было продолжить процесс.

Надеюсь получить некоторые намеки.

@edited 2014-02-15: Мой код используется владельцем обертки. Вы можете думать о нем как о плагине для них.

В оболочке используется отображение: none, чтобы скрыть или показать iframe, который переносит мой контент.

  • 0
    Разместите соответствующий код, который показывает / скрывает определенный фрейм
  • 0
    Если главная страница не совпадает с доменом вашей страницы, я боюсь, что вы не можете определить видимость своей страницы.
Показать ещё 2 комментария
Теги:
iframe

1 ответ

0
Лучший ответ

Ответ зависит от того, как iframe становится невидимым. Если display: none используется, простой способ определить видимость iframe в iframe:

var isVisible = !!window.frameElement.offsetWidth; // --> true or false

offsetWidth равно 0, когда на display установлено значение none в iframe или один из его родительских элементов.

  • 0
    Спасибо за вашу помощь. Похоже, теперь это работает, и я могу определить, был ли iframe скрыт под нагрузкой или нет. Тогда следующая проблема - как узнать, когда фрейм снова становится видимым, знаете ли вы, как это сделать?
  • 0
    isVisible в моем ответе равно true , если iframe имеет ширину ... Вы устанавливаете видимость с помощью JS, просто измените переменную внутри iframe в том же коде?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню