2010-02-19 6 views
1

jquery 및 greasemonkey를 가지고 놀고 있으며 setTimeout을 사용하여 매초 함수를 호출하려고했지만 어떤 이유로 작동하지 않습니다.greasemonkey, jquery 및 setTimeout

// Add jQuery 
var GM_JQ = document.createElement('script'); 
GM_JQ.src = 'http://jquery.com/src/jquery-latest.js'; 
GM_JQ.type = 'text/javascript'; 
document.getElementsByTagName('head')[0].appendChild(GM_JQ); 

// Check if jQuery's loaded 
function GM_wait() { 
    if(typeof unsafeWindow.jQuery == 'undefined') { window.setTimeout(GM_wait,100); } 
else { $ = unsafeWindow.jQuery; letsJQuery(); } 
} 
GM_wait(); 

// All your GM code must be inside this function 
function letsJQuery() { 

기능 타이머() { 경보 ("TEST")}

의 setTimeout (타이머 1000);

} 

어떤 아이디어가 있습니까?

+0

jQuery를 나던의 최신 버전을 그리스 몽키에서 일해라. GM에서 작동하는 최신 버전은 1.3.2이며 GM_wait()를 사용하지 않으려면 GM_JQ에 eventlistener (로드시)를 추가하는 것이 좋습니다. – w35l3y

답변

0

jQuery를 올바르게로드했는지 평가하는 데 문제가 있습니다. Google에서 GreaseMonkey를 통해 jQuery를 삽입하는 더 좋은 방법을 제안합니다. (이 스크립트는 어딘가에 있지만이 컴퓨터에서는 수행하지 않습니다.)

그러나 실제로하고 싶은 일을 수행하기 위해 jQuery가 실제로 필요하지는 않습니다. 단순히 :

function timer() { 
    console.log('TEST') 
    setTimeout(timer, 1000); 
} 

timer(); 

작품 잘 :

(나는 방화범 콘솔에 출력을 전송하는, CONSOLE.LOG에 경고 변경주의, 경고 통증을 일으킬 것이다!)

+0

'''setInterval()'''for 위의 기능성 : – user1931751

+0

맞아,'setInterval()'이 더 나을거야, 7 년 전에 나에게 가져 가라. – Steve