Greasy Fork is available in English.
在页面右上角添加按钮,下载指定img标签的图片
当前为
// ==UserScript==
// @name 豆包网页版下载无水印原图
// @namespace http://tampermonkey.net/
// @version 1.0
// @description 在页面右上角添加按钮,下载指定img标签的图片
// @author 公众号:代码简单说
// @match https://www.doubao.com/chat/*
// @grant none
// ==/UserScript==
(function () {
'use strict';
// 创建按钮
const btn = document.createElement('button');
btn.innerText = '下载原图';
btn.style.position = 'fixed';
btn.style.top = '10px';
btn.style.right = '60px';
btn.style.zIndex = 9999;
btn.style.padding = '10px 40px';
btn.className="semi-button semi-button-primary samantha-button-DHlMIF secondary-RcjOde medium-_9OY57 h-36 px-20 !rounded-12 s-font-xs-strong !text-white";
btn.onclick = async () => {
const img = document.querySelector(`div[data-visible=true] img[data-testid="in_painting_picture"`)
if (!img) {
alert('找不到图片元素!');
return;
}
const imgUrl = img.src;
const fileName = imgUrl.split('/').pop().split('?')[0] || 'image.jpg';
try {
const res = await fetch(imgUrl, { mode: 'cors' });
const blob = await res.blob();
const blobUrl = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = blobUrl;
a.download = fileName;
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
URL.revokeObjectURL(blobUrl); // 释放内存
} catch (err) {
alert('下载失败:' + err.message);
}
};
window.addEventListener('load', () => {
document.body.appendChild(btn);
});
})();