変更があったらブラウザを自動リロードするブックマークレット(2)
フックするファイルの指定をなくして、ロケーションのhtml本体と、そのhtmlにリンクしてるjsとcssがローカルにある場合フックするように修正した。
javascript: (function () { if (location.href.indexOf("file:///")) { alert("not local file"); return; } var func = function hook(name) { setInterval(function() { var self = arguments.callee; var req = new XMLHttpRequest(); req.open("GET", name, true); req.onload = function() { (self.old && req.responseText != self.old) && window.doc.location.reload(true); self.old = req.responseText; }; req.send(null) }, 1000); }.toString(); function localFileSerch(r, name) { var tag = document.getElementsByTagName(name); for (var i = 0; i < tag.length; i++) { var n = (name == "link") ? tag[i].href : tag[i].src; if (!n.indexOf("file:///")) { r.push('hook("' + n + '");'); } } } var script = []; script.push('<script type="text/javascript">'); script.push("(function () {"); script.push(func); localFileSerch(script, "script"); localFileSerch(script, "link"); script.push('hook("' + location.href + '");'); script.push("})();"); script.push("</script>"); document.write(script.join("\n") + '<frameset><frame name="doc" src="' + location.href + '"></frame></frameset>'); document.close(); })();