1
Greasemonkey를 사용하여 웹 사이트에서 setInterval
을 수정하려고합니다. 내 코드는 다음과 같습니다.javascript : setinterval에 객체를 전달하는 사이트
// @run-at document-start
(function() {
var clearIntervalOriginal = unsafeWindow.clearInterval;
unsafeWindow.clearInterval = function(foo) {
GM_log(typeof foo + ":" + foo)
clearIntervalOriginal(foo);
}
}());
예 website
콘솔 로그를 보면 간격 ID 번호가 표시되지 않고 대신 foo
이 개체 인 경우가 있습니다.
//yahoo code
i.tid=c.setInterval(function(){
if(i.done){
c.clearTimeout(i.tid);
i.rec=[i.t_render-h,i.t_jsload-h,i.t_jsinit-h,i.t_jsend-h,i.t_jsend-i.t_jsinit]
}
},f);
가 어떻게 foo
개체에서 간격 ID 번호를 얻을 수 있습니다 : 사이트의 소스를 보면,이 사용중인 관련 코드 생각?
당신은 무엇을'console.log' 출력을 볼 수있는 사람이야. 그것이 무엇이든간에 기초를 두어, 이것은 당신 자신을 위해 대답하는 것이 사소한 것이어야합니다. –
두 번째 코드에서'c' 참조는 무엇입니까? 첫 번째 비트에서 'clearInterval'이 대체됩니다 (시작하기에 좋은 전략은 아닙니다). 그런 다음 나중에'clearTimeout'이 호출됩니다. 그게 의도 된거야? 닉이 말했듯이 타이머 참조는'i.tid'에 있기 때문에 취소해야합니다. – RobG