OperaのユーザーJavaScriptをFirefoxのGreasemonkeyと同じタイミングで実行する
詳しい話は Opera のユーザーJavaScript は「.js」か「.user.js」かで実行されるタイミングが違う - m2O - チーム俺等におまかせするとして、結論を書くと。
- OperaのUserJSはファイル名をuser.jsではなく、.jsにする
- DOMContentLoadedにaddEventListenerする
以上で、Greasemonkeyと同じタイミングで実行されます。
通常のonloadとの違いは画像などの読み込み完了を待たずに実行される点で、これが結構大きな違いになることが多々あります。
具体的にはこんな感じ。
// ==UserScript== // @name sample // @namespace http://ss-o.net/ // @include http://ss-o.net/* // @version 0.0 // ==/UserScript== document.addEventListener('DOMContentLoaded', function() { //なんか書く },false);
ついでに、GM関数とかを適当に定義してあるサンプルファイルを置いときます。
http://ss-o.net/userjs/sample.js
というわけで、AutoPagerize_operaなどを修正してあります。