このページに関してのお問い合わせはこちら
Firefox userChrome.js greasemonkeyスクリプトスレ17
ツイート
203
:
名無しさん@お腹いっぱい。
:
2011/10/12(水) 11:15:45.29 ID:D4z+L+1Q0
(特定のURLだった場合読み込まれる前にURLを変更したい)
http://hibari.2ch.net/test/read.cgi/software/1318227033/21
nsIWebProgressListenerの使い方は以下を参照
https://developer.mozilla.org/en/Code_snippets/Progress_Listeners
https://developer.mozilla.org/En/Listening_to_events_on_all_tabs
(記載の通り)前者の方法だと前面タブしか監視できない。後者なら背面タブも可能
但しこれらは自作アドオンやuserChrome.js等を用いて処理する方法の説明
GreasemonkeyやScriptish等で実現したいならnsIWebProgressListenerは使えない
単にDOMContentLoadedよりも早く何かを処理したいなら
メタデータに@run-at document-startを記述するだけで実現可能
http://wiki.greasespot.net/Metadata_Block
サンプルコードは以下
// ==UserScript==
// @name Do something before DOMContentLoaded
// @namespace
http://www.google.co.jp/
// @include
http://www.google.co.jp/*
// @run-at document-start
// ==/UserScript==
if(document.readyState == "loading"){
GM_log("Before DOMContentLoaded");
GM_log(document.body); // null
window.addEventListener("DOMContentLoaded", function(){
GM_log("After DOMContentLoaded");
GM_log(document.body); // [object HTMLBodyElement]
}, false);
}