読込に失敗した画像を再読込する
重いサイトを開いてたときに、不便したので作った。
本当は、読込に失敗したフレームも再読込したかったんだけど、
やり方が分からなかったので画像のみです。
一応各フレームの更新を掛けたオブジェクト数をechoで表示してます。
重いページは、再読込掛けても失敗していまい コードが正しいかがいまいち分かりません。orz
(function(){ var obj={ reload:function(){ obj.core.call(this,content.window); },core:function(aWindow){ var w=aWindow; for(var i=0,j=w.frames.length;i<j;++i){ arguments.callee.call(this,w.frames[i]); } var cnt=0,req,img,list=w.document.images; for(var i=0,j=list.length;i<j;++i){ img=list[i]; if(img instanceof Ci.nsIImageLoadingContent && img.currentURI){ req = img.getRequest(Ci.nsIImageLoadingContent.CURRENT_REQUEST); if(req && !(req.imageStatus & req.STATUS_LOAD_COMPLETE)){ img.forceReload(); ++cnt; } } } liberator.echo("reload image:"+cnt); } } commands.removeUserCommand("reloadimage"); commands.addUserCommand(["reloadimage"],"reload images",obj.reload); })();