2

我正在学习如何开发 Chrome 扩展程序。

我有一个柜台

这是我的代码:

$(document).ready(function(){

 var i = 0;
  setInterval(function() {
   i++;
   chrome.browserAction.setBadgeText ( { text: i.toString() } );
   chrome.browserAction.setBadgeBackgroundColor({color: "#000"})

  }, 1000);

})

并且计数器仅在我单击该图标时才起作用,我如何让他始终更新,而不仅仅是在我单击它时。

是我的 manifest.json 文件

谢谢

4

2 回答 2

1

把这个放进去background.js

var i = 0;
window.setInterval(function() {
  chrome.browserAction.setBadgeText({text:String(i)});
  i++;
}, 1000);
于 2012-12-29T17:33:35.400 回答
1

这是另一个使用递归而不是SetInterval()函数的工作变体。

参考YouTube 视频

manifest.json文件所做的更改

消除"persistent" : true,因为默认情况下它们被赋予一个值true

添加到的代码weather.js

我使用递归而不是,这里Setinterval()有一些有趣的差异

//Counter Initialized to Zero
var i = 0;
(function updateCounter() {
    //Counter Incremented
    i++;
    //Counter is set to Badge
    chrome.browserAction.setBadgeText({
        text: i.toString()
    });
    //Used timeout with same interval
    setTimeout(updateCounter, 1000);
})();
//Badge Background color is set to black
$(document).ready(function () {
    chrome.browserAction.setBadgeBackgroundColor({
        color: "#000"
    })
})
于 2012-12-30T07:00:04.367 回答