修复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');
相关推荐
北海-cherish3 小时前
vue中的 watchEffect、watchAsyncEffect、watchPostEffect的区别
前端·javascript·vue.js
2501_915909064 小时前
HTML5 与 HTTPS,页面能力、必要性、常见问题与实战排查
前端·ios·小程序·https·uni-app·iphone·html5
white-persist5 小时前
Python实例方法与Python类的构造方法全解析
开发语言·前端·python·原型模式
新中地GIS开发老师5 小时前
Cesium 军事标绘入门:用 Cesium-Plot-JS 快速实现标绘功能
前端·javascript·arcgis·cesium·gis开发·地理信息科学
Superxpang5 小时前
前端性能优化
前端·javascript·vue.js·性能优化
Rysxt_6 小时前
Element Plus 入门教程:从零开始构建 Vue 3 界面
前端·javascript·vue.js
隐含6 小时前
对于el-table中自定义表头中添加el-popover会弹出两个的解决方案,分别针对固定列和非固定列来隐藏最后一个浮框。
前端·javascript·vue.js
大鱼前端6 小时前
Turbopack vs Webpack vs Vite:前端构建工具三分天下,谁将胜出?
前端·webpack·turbopack
你的人类朋友6 小时前
先用js快速开发,后续引入ts是否是一个好的实践?
前端·javascript·后端