我试着查看源代码,但是我无法理解它。
我想知道如何制作类似Gmail的动态收藏夹图标并显示计数。
有什么想法吗?
我试着查看源代码,但是我无法理解它。
我想知道如何制作类似Gmail的动态收藏夹图标并显示计数。
有什么想法吗?
canvas
元素创建一张图片,然后将当前的网站图标替换为它。请查看以下链接以获取详细解释。
参考
代码来自上述参考。
标记
<link id="favicon" rel="icon" type="image/png" href="image.png" />
JS
(function () {
var canvas = document.createElement('canvas'),
ctx,
img = document.createElement('img'),
link = document.getElementById('favicon').cloneNode(true),
day = (new Date).getDate() + '';
if (canvas.getContext) {
canvas.height = canvas.width = 16; // set the size
ctx = canvas.getContext('2d');
img.onload = function () { // once the image has loaded
ctx.drawImage(this, 0, 0);
ctx.font = 'bold 10px "helvetica", sans-serif';
ctx.fillStyle = '#F0EEDD';
if (day.length == 1) day = '0' + day;
ctx.fillText(day, 2, 12);
link.href = canvas.toDataURL('image/png');
document.body.appendChild(link);
};
img.src = 'image.png';
}
})();
<link>
中的默认值)上绘制。此外,每次运行函数时(在本例中为一次),它都会向文档的主体添加一个<link>
元素(这是非法的:只能在<head>
中)。因此,我建议省略cloneNode()
和appendChild()
,仅更新原始链接href。 - handle