修复img实际有正确的链接,但是不显示 (chrome 插件保存的html)--google镜像chatgpt

打开目标html文件 chrome 控制台 执行以下脚本

javascript 复制代码
//删除侧边栏
$x("//div[@id='sidebar']")[0].remove();

//修复img实际有正确的链接,但是不显示  (chrome 插件保存的html)
//img.data-savepage-src 复制到 img.src
imgs=$x("//img");
imgs.forEach((img) => {  var src=img.getAttribute('src');  if(!src.startsWith('data:image') && !src.startsWith("http") ) {img.setAttribute("src", img.getAttribute("data-savepage-src")) };  });  
javascript 复制代码
    
    //刷新单个节点
function reload(  id){
    var container = document.getElementById(id);
    var content = container.innerHTML;
    container.innerHTML= content; 
    
   //this line is to watch the result in console , you can remove it later	
    console.log("Refreshed:"+id); 
}



imgs=$x("//img");
//imgs.forEach((img) => {   img.setAttribute("src", img.getAttribute("data-savepage-src"));  });   

$x("//div[@id='sidebar']")[0].remove();
imgs=$x("//img");
imgs.forEach((img) => {  
var src=img.getAttribute('src');  
var parentNode = img.parentNode;
//src有可能是 data:img/png 后跟着图片内容base64编码的样式
//img如果不是http打头(可能是data:img/打头) 且 img的父节点是超链接a , 
if(  !src.startsWith("http") && parentNode.tagName=='A' )  {
//则用a.href覆盖img.src
    img.setAttribute("src", parentNode.getAttribute("href") ); 
    img.removeAttribute("data-savepage-src"); 
};  
});  
reload('page');
相关推荐
晴天1612 分钟前
前端 postMessage 使用场景
前端·javascript·网络
zhanghaha13141 小时前
HTML系列教程:15_标签 全称 + 简写 超详细讲解(新手专用)
前端·html
zhanghaha13141 小时前
HTML系列教程:14_HTML 表单与输入框 <form>、<input> 零基础详解
java·前端·javascript
IMPYLH1 小时前
HTML 的 <samp> 元素
前端·网络·html
IMPYLH1 小时前
HTML 的 <script> 元素
前端·html
weixin_493503676 小时前
Vue3 前端生成 PDF:会员证书与活动签到表的三种打印方案与踩坑记录
前端·pdf·状态模式
嘉琪coder7 小时前
我做了一个 Chrome 扩展,把 YouTube 播放列表批量变成 AI 可读的本地 Markdown
chrome·开源·浏览器
尾善爱看海9 小时前
前端算法与手写题集
前端·算法
徐小夕9 小时前
JitWord 4.0 万字分享:从协同工具到AI Word操作系统,聊聊3年产品创业史
前端·vue.js·后端
萧鼎11 小时前
Python 高性能Web框架神器 FastAPI:自动生成API文、基于Pydant、异步请求处理全搞定
前端·python·fastapi