如何解决JavaScript小书签图片下载会损坏图片 编辑:
我创建了一个javascript小书签,可以在页面上下载最大的图片,但无法查看下载的图片:
javascript:(
function(){
images = document.querySelectorAll("img");
image=images[0];
for (i of images) {
if (i.height * i.width > image.height * image.width) { image = i };
};
var pom = document.createElement('a');
pom.setAttribute('href','data:application/octet-stream,' + encodeURIComponent(image.src));
pom.setAttribute('download',image.src);
pom.style.display = 'none';
document.body.appendChild(pom);
pom.click();
document.body.removeChild(pom);
}
)();
如果我改用以下几行,它将在另一个选项卡中打开文件而不是保存文件。
pom.href=image.src;
pom.download = image.src;
所以我从另一个SO答案中使用了以下行,该行下载了图像但无法打开:
pom.setAttribute('href',' + encodeURIComponent(image.src));
我认为该问题很可能是编码问题,但我不知道如何解决。有帮助吗?
编辑:
在这里找到了解决方案:Chrome 65 blocks cross-origin <a download>. Client-side workaround to force download? 但是它仅在我将命令粘贴到控制台中时有效。当我将其放入书签时,会出现相同的“无法读取标题。图像放大或损坏”错误。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。