簡體   English   中英

如何從選項頁面啟動和停止計時器

[英]how do I start and stop a timer from an options page

現在我在我的后台頁面中有這個1分鍾計時器,它永遠運行我希望能夠從選項頁面啟動和停止它。

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

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

Window對象的setInterval()方法以指定的毫秒數間隔重復調用要調用的函數。 setInterval()返回一個opaque值,該值可以傳遞給clearInterval()以取消對調度函數的任何將來調用。 詳細了解Javascript定時器的工作原理 有了它你可以寫這樣的東西:

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.startAction()啟動計時器並且My.Controller.stopAction()停止。

閱讀並探索JavaScript中的命名空間 希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM