Букмарклет, чтобы заставить IE6 начать автообновление страницы? - PullRequest
0 голосов
/ 26 августа 2009

Один из моих коллег нуждается в части данных от стороннего веб-сайта. Эти данные публикуются на сайте каждое утро в произвольное время. Он должен сидеть и нажимать кнопку «Обновить» в своем браузере каждые 10 секунд, пока он не появится. Он спросил меня, могу ли я написать что-нибудь, чтобы эта страница автоматически обновлялась каждые Х секунд, чтобы он мог оставить ее открытой на одном мониторе и выполнять другую работу на другом.

Обычно я пишу скребок для экрана на Perl и пишу ему номер, который он хочет, когда он выйдет ... Но я подумал, что было бы забавно написать букмарклет.

Я дошел до этого:

javascript:(function(){setInterval("location.reload(true);",10000);})()

Но не могу понять, как заставить эффект сохраняться после перезагрузки страницы. Является ли это возможным? Если так ... как?

Это было бы легко в Firefox / Greasemonkey ... но этот парень застрял на закрытой версии IE6. Он может установить букмарклет, но не может установить IE-эквивалент GM (если он вообще существует)

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

Ответы [ 3 ]

1 голос
/ 26 августа 2009

Вы можете попробовать AJAX, чтобы ПОЛУЧИТЬ страницу, а затем заменить innerHTML текущего тела новым.

0 голосов
/ 26 августа 2009

Не уверен насчет букмарклета, но этот пример обновляет Iframe на странице с интервалом, что должно сработать ...

<!DOCTYPE html>

<html>
  <head>
    <title>Auto Refresh</title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <script type="text/javascript">
      window.onload = function() {
        var url = 'http://www.google.com';

        setInterval(function() {
          document.getElementById('thisFrame').src = url;
        }, 10000)
      }
    </script>
  </head>
  <body>
    <iframe id="thisFrame" src="http://www.google.com" frameborder="0" width="100%"></iframe>
  </body>
</html>
0 голосов
/ 26 августа 2009

Вы можете попробовать, чтобы букмарклет открывал новое окно и записывал содержимое этого окна, чтобы перезагрузить родительский объект через что-то вроде

window.opener.document.location.reload ();

...