Firefox에서 JavaScript와 Greasemonkey를 사용하여 하나의 탭만 다시로드 하시겠습니까?


8

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);

이것은 작동하지만 @include 문에 지정된 탭뿐만 아니라 열려있는 모든 탭을 5 분마다 다시로드합니다.

이 작업을 수행하는 방법이 있습니까?


http://ww.bbc.co.uk 가 존재하지 않습니까?
— Laoujin

죄송합니다-오타 일뿐입니다
— Neil Spencer

답변:


8

이 코드에는 메타 데이터 블록 이 손상되어 해당 블록 에 공백이 중요하며 줄의 시작 부분에 추가 공백이 있으면 블록이 손상 되어 모든 페이지에 대해 스크립트가 실행됩니다 (기본 동작).

업데이트 : 손상된 블록의 모양은 SuperUser의 디스플레이 버그 일 수 있습니다. 조금만 조사하겠습니다.
Updatier : 손상된 블록은 실제입니다. OP의 코드는 탭과 공백의 조합으로 들여 쓰기되어 SU의 원시 포스트 편집기를 속 였지만 최종 표시는 아닙니다.

또한 @include지시문은 존재하지 않는 웹 페이지를 지정합니다. ww., 대 www.. 그 줄은 다음과 같아야합니다.

// @include     http://www.bbc.co.uk/

또는 가능하면 :

// @include     http://www.bbc.co.uk/*

홈 페이지 이상의 효과를 원하는 경우

모두 모아서 setTimeout권장 된 방식으로 사용 ( "auto eval ()"사용을 피하십시오) :

// ==UserScript==
// @name        Auto Reload Protopage
// @namespace   http://blog.monstuff.com/archives/cat_greasemonkey.html
// @description Reload pages every 5 minutes
// @include     http://www.bbc.co.uk/
// @grant       none
// ==/UserScript==

// based on code by Julien Couvreur
// and included here with his gracious permission

var numMinutes = 5;
setTimeout (location.reload, numMinutes*60*1000);

1
훌륭합니다-이것에 감사드립니다. 스크립트는 실제로 모든 페이지가 아닌 원하는 페이지에서만 작동합니다.
— Neil Spencer

2

Javascript 에서이 작업을 수행하는 방법을 모르겠지만 Firefox에는 ReloadEvery 라는 애드온이 있습니다. 설치하고 FF를 다시 시작한 다음 페이지를 마우스 오른쪽 버튼으로 클릭하고 ReloadEvery and a time을 선택하십시오.


1
예-그러나 Firefox를 열고 웹 사이트로 이동할 때마다 ReloadEvery를 활성화해야합니다. 내가 원하는 것은 페이지로 이동하여 다시로드가 자동으로 활성화되는 것입니다. 위의 자바 스크립트는이 작업을 수행하지만 열려있는 다른 모든 탭을 다시로드합니다.
— Neil Spencer
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.