iframe onreadystatechange - PullRequest
       8

iframe onreadystatechange

4 голосов
/ 17 июля 2011

У меня есть HTML-страница, которая содержит <iframe>.<iframe> обновляется при определенных событиях (и я вижу, как изменяется содержимое <iframe>, так что пока все в порядке).

Что я хочу сделать, это добавить onreadystatechangeк <iframe>, чтобы я мог отображать «загрузочный» текст во время извлечения содержимого.

Я не мог добавить onreadystatechange в любом браузере (Safari, Chrome, FF).Судя по тому, что я нашел в Интернете, похоже, что он работает в IE, но это мне не поможет.

Я пробовал:

<iframe onreadystatechange="function();"> document.getElementById('frameId').onreadystatechange = function() {}; document.getElementById('frameId').contentDocument.onreadystatechange = function() {};

, но ничегоКажется, работает.

Спасибо за вашу помощь.

1 Ответ

7 голосов
/ 18 июля 2011

Итак, если вы хотите показать сообщение «Страница загружается» и скрыть его, когда загрузка фрейма завершена, вы можете сделать что-то похожее на пример ниже. Обратите внимание, что я использовал JQuery только для упрощения этого процесса. Но, очевидно, это можно сделать и на 100% в Javascript.

Я также создал это на JSFiddle, чтобы показать вам результат. Проверьте это здесь !!

<html>
<head>
<script type="text/javascript">

function load() {
   //iframe has loaded.
   $('div#loading').delay(1000).slideUp('slow', function() {
        $('div#finished').slideDown('slow').delay('2000').slideUp('slow');
        $('iframe').toggle();
   });
}
</script>
</head>
<body>

     <div id="loading">This page is currently loading.. Just a sec please!</div>
     <div id="finished" style="display: none">Thanks for waiting, enjoy my website now!</div>
     <iframe style="display: none" onload="load()" src="your_url.php"></iframe>

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