1

我想自定义我的 Chrome 扩展的扩展操作按钮的设计(视图)。

我想知道是否可以使用 html 而不仅仅是图片。我希望按钮显示文本和数字。我希望能够更新文本和数字。

如果我可以生成包含所需信息的图像并更改默认按钮图标,我确实看起来很高兴。但我什么也没找到。

提前谢谢

4

1 回答 1

1

要创建动态浏览器操作图标,请使用HTML5 Canvas 元素;创建一个画布,向其中添加图像和/或文本,然后将画布的图像数据传递给chrome.browserAction.setIcon.

这是一个小例子(请注意,它使用 jQuery 来创建canvas元素):

$('body').append('<canvas id="myCanvas" width="19" height="19"></canvas>');
var myCanvas = document.getElementById('myCanvas');
var context = myCanvas.getContext('2d');
context.fillStyle = "blue";
context.font = "normal 9px Arial";
context.fillText("foo", 0, 19);
chrome.browserAction.setIcon({ imageData: context.getImageData(0, 0, 19, 19) });

请记住,您只能使用 19x19 像素,因此字体可能需要非常小。

根据您的需要,您可以通过将文本创建为图像并将图像添加到画布和/或使用chrome.browserAction.setBadgeText.

如需进一步阅读,请参阅:

于 2013-08-10T02:23:05.170 回答