2012-02-07 5 views
0

바로 지금 내 배경 페이지에이 1 분 타이머가 있습니다.이 타이머는 영원히 계속 실행되며 옵션 페이지에서 시작하고 중지 할 수 있기를 원합니다. 윈도우 오브젝트 일정옵션 페이지에서 타이머를 시작하고 중지하는 방법

chrome.browserAction.setBadgeBackgroundColor({color:[0, 0, 0, 255]}); 

var i = 1; 
window.setInterval(function(timer) { 
chrome.browserAction.setBadgeText({text:String(i)}); 
i++; 
}, 60000); 

답변

2

setInterval() 방법 함수는 지정된 밀리 초 간격으로 반복하여 호출 할 수있다. setInterval() 예약 기능의 향후 호출을 취소 clearInterval()에 전달할 수있는 불투명 한 값을 반환합니다. How Javascript Timers work에 대해 자세히 알아보십시오. 그것으로 당신은 다음처럼 작성할 수 있습니다

My.Controller = {}; 

(function() { 
     var interval = 10; 
     var timer = null; 

    function init (param) { 
    // initialisations if any 
    } 

    // Override the default interval of 10 seconds by passing new interval 
    function startAction (param, tInterval) { 
    // Set a timer 
    var ti = (!tInterval) ? interval : tInterval; 
    timer = setInterval(My.Controller.action, ti * 2000);  
    } 

    function action() { 
    // Logic here 
    } 

    function stopAction() { clearInterval(timer); } 

    var c = My.Controller; 
    c.init = init; 
    c.startAction = startAction; 
    c.stopAction = stopAction; 
})(); // end Controller 

지금 당신은 타이머를 시작하고 및 My.Controller.stopAction() 중지 My.Controller.startAction()을 말할 수있다.

읽고에 대한 namespaces in JavaScript을 탐구. 희망이 도움이됩니다.

관련 문제