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

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

//删除侧边栏
$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")) };  });  

    
    //刷新单个节点
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');

你可能感兴趣的:(chrome,html,前端)