Я новичок в Greasemonkey и javascript, но нашел скрипт ниже для перезагрузки страницы каждые 5 минут.
// ==UserScript==
// @name Auto Reload Protopage
// @namespace http://blog.monstuff.com/archives/cat_greasemonkey.html
// @description Reload pages every 5 minutes
// @include http://ww.bbc.co.uk
// @grant none
// ==/UserScript==
// based on code by Julien Couvreur
// and included here with his gracious permission
var numMinutes = 5;
window.setTimeout("document.location.reload();", numMinutes*60*1000);
Это работает, но перезагружает все открытые вкладки каждые 5 минут, а не только ту, которая указана в операторе @include.
Есть ли способ сделать это?
firefox
javascript
greasemonkey
Нил Спенсер
источник
источник
Ответы:
Этот код имеет поврежденный блок метаданных , пробелы являются критическими для этого блока, и лишние пробелы в начале строки могут его разбить - вызывая запуск сценария для всех страниц (поведение по умолчанию).
Обновление: появление поврежденного блока может быть просто ошибкой отображения здесь в SuperUser. Будем расследовать немного.
Updatier: поврежденный блок является реальным, код OP имеет отступ от комбинации вкладок и пробелов, которые одурачили редактор необработанных сообщений SU, но не окончательный вывод.
Кроме того,
@include
директива указывает веб-страницу, которая не существует.ww.
, противwww.
. Эта строка должна быть:Или возможно:
если вы хотите больше, чем просто домашняя страница.
Собираем все вместе и используем
setTimeout
рекомендуемым способом (избегайте использования "auto eval ()"):источник
Я не уверен, как это сделать в Javascript, но у Firefox есть дополнение, называемое ReloadEvery . Установите его, перезапустите FF, а затем щелкните правой кнопкой мыши на странице и выберите ReloadEvery и время.
источник