Javascript 在chrome extension中下载画布作为图像
以下代码适用于我在自定义html页面中将画布作为图像下载:Javascript 在chrome extension中下载画布作为图像,javascript,html,canvas,google-chrome-extension,Javascript,Html,Canvas,Google Chrome Extension,以下代码适用于我在自定义html页面中将画布作为图像下载: var save = function() { var x= document.getElementById("output-canvas"); var dt = x.toDataURL('image/png'); this.href = dt; }; downloadLink.addEventListener('click', save, false); 但是对
var save = function() {
var x= document.getElementById("output-canvas");
var dt = x.toDataURL('image/png');
this.href = dt;
};
downloadLink.addEventListener('click', save, false);
但是对于我正在开发的chrome插件中的popup.html中的canvas,它不起作用(没有任何错误)
有人能帮我找到一个在chrome插件中下载画布项目的解决方案吗
编辑:
这是我的清单文件:
{
...
"permissions": [ "contextMenus", "tabs", "http://*/*", "https://*/*", "activeTab", "storage"],
...
}
检查表:
<a download="test.png" href="...">Save me</a>
<a download="test.png" href="...">Save me</a>
你的manifest.json的“权限”值是多少?您是否将任何图像元素放入画布?@wOxxOm我已编辑我的问题并添加清单信息。如果我理解的很好,你的下一个问题答案是肯定的。嗯,假设原始图像有http://或https://URL,权限似乎没问题。以防万一,你看了那张照片了吗?(它在不同的地方)@wOxxOm是的,它有。是的,两个控制台看起来都很清楚。当右键单击画布时,我也看不到“将图像另存为…”。这可能与这个问题有关。知道吗?我想你的link元素没有
download
属性。你的manifest.json的“permissions”值是多少?您是否将任何图像元素放入画布?@wOxxOm我已编辑我的问题并添加清单信息。如果我理解的很好,你的下一个问题答案是肯定的。嗯,假设原始图像有http://或https://URL,权限似乎没问题。以防万一,你看了那张照片了吗?(它在不同的地方)@wOxxOm是的,它有。是的,两个控制台看起来都很清楚。当右键单击画布时,我也看不到“将图像另存为…”。这可能与这个问题有关。知道吗?我猜你的link元素没有download
属性。
var link = document.createElement('a');
link.download = 'test.png';
link.href = canvas.toDataURL('image/png');
document.body.appendChild(link);