Firefox向けに作成されたGreasemonkeyを動かす
提供: Opera Wiki
目次 |
[編集] 注意
Firefox アドオンの Greasemonkey は、「クロスサイトスクリプティング」という本来安全ではない操作を比較的安全に (ちゃんとした使い方をすればユーザースクリプトのみから使うことができて、悪意のあるサイト側に乗っ取られる心配がなく) 行うことができるように設計されています。
以下の方法は Greasemonkey にある関数を Opera で無理矢理動かそうとするため、Greasemonkey と同じように安全ではありません。リスクを十分理解できる人だけが使って下さい。
[編集] 手順
以下の4つのUserJSを使うとかなりのGreasemonkeyが動作するようになります。
- Cross-domain XMLHttpRequest にある、「a-lib-stacktrace.js」
- 同じページにある「a-lib-xmlhttp-cd.js」
- User JavaScript in Operaにある、「Emulate GM functions」という User JS (注意 : UserJS.ORGのEmulate Greasemonkey functionsは古いまま更新が停止しています)
- GreaseMonkey Script on Opera 9.00にある、「000.user.js」
「000.user.js」と「Emulate Greasemonkey functions」を同時に入れると両方で「GM_XMLHttpRequest」の定義を試みる。「000.user.js」での定義はa-lib-xmlhttp-cd.jsなどを考慮したものにはなっていないため、19行目の
var req = new XMLHttpRequest();
を
var req = new opera.XMLHttpRequest();
に書き換えて利用する必要がある。
- 参考:「000.user.js」を「Emulate Greasemonkey functions」の後に読み込まれるように名前を変える方法もあるが、確実な保証はないため紹介に留めておく。
[編集] 000.user.js使用上の注意
000.user.jsとdel.icio.usによればdel.icio.usのタグクラウドが表示されなくなるなどの弊害が現れる場合もあるようです。
[編集] 参考: 他に行われていた似たような試み
- GM関数を使えるようにする
- "書くだけ書いたけど、試していない。"
- Safari3*GreaseKit1.4用のGM関数