Show and reload broken images

The name explained it

目前為 2014-06-01 提交的版本,檢視 最新版本

// ==UserScript==
// @name        	Show and reload broken images
// @description     The name explained it
// @namespace   	eight04.blogspot.com
// @include       	http://*
// @include     	https://*
// @version       	2.1
// @grant			GM_addStyle
// ==/UserScript==

(function(){
	
	GM_addStyle(
		"img{-moz-force-broken-image-icon:1;}"
	);

	function load(d){
		d.src += "#";
	}

	function reloadImg(){
		var imagesFailed = document.querySelectorAll("img:-moz-broken");
		var images = document.images;
		
		for(let image of images){
			if(!image.complete){
				image.classList.add("failed");
			}else{
				image.classList.remove("failed");
			}
		}
		
		for(let image of imagesFailed){
			image.classList.add("failed");
		}
		
		for(let image of images){
			if(image.classList.contains("failed") && image.src){
				load(image);
			}
		}
		
		for (let i = 0; i < frames.length; i++) {
			frames[i].postMessage("EIGHT_IMAGE_RELOAD", "*");
		}
	}

	function getKey(e){
		if(e.keyCode==82 && e.altKey)
			reloadImg();
	}

	function getMessage(e){
		console.log(e);
		if(e.data != "EIGHT_IMAGE_RELOAD"){
			return ;
		}
		reloadImg();
	}
	
	document.addEventListener("keyup",getKey,false);
	window.addEventListener("message", getMessage, false);
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址