2005 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 02 | 03 | 04 | 05 | 06 | 11 | 12 |
2008 | 01 | 09 | 10 |
2009 | 01 | 02 | 03 | 06 |
2006 | 01 | 02 | 03 | 04 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 02 | 03 | 04 | 05 | 06 | 11 | 12 |
2008 | 01 | 09 | 10 |
2009 | 01 | 02 | 03 | 06 |
2006/12/02 Sat
■ [UserJS]opera.defineMagicFunction

メモ。
opera.defineMagicFunction(string: functionName,function: replacementFunction)
このreplacementFunctionの引数にちょっと注意。
調べてみたところ、第1引数が置き換える前の関数、第2引数がwindowオブジェクト(追記部分参照)、第3引数以降が関数に渡された引数となるようだ。
関数hogeに渡された引数と返り値を表示したい場合は下のようにしたらいいはず。多分。
opera.defineMagicFunction('hoge', function() {
var f = arguments[0];
var args = arguments.slice(2);
opera.postError(args);
var r = f(args);
opera.postError(r);
return r;
});
追記
ちゃんと調べずに一部間違ったこと書いてしまいました。先に公式な情報に当たるべきだった…。
Opera: User JavaScript: Available Methods, Events, and Properties
Opera: User JavaScript: Available Methods, Events, and Properties
上のページにちゃんと引数についても書いてあります。が、第2引数について説明してある部分
これがなんのことやらわからないので英語のほうも見てみました。
The object that would have been referred to by the 'this' keyword in the real function.
これを訳してみると、「実際の関数の中でthisキーワードによって参照されたであろうオブジェクト」かな?うーん分かりにくい。
多分意味するところは
function hoge() {
var x = this;
}
このxと同じものが
opera.defineMagicFunction('hoge', function(func, obj) {
// obj は上の x と同じ
});
第2引数として渡されるということだと思います。
コメント
トラックバック - http://orera.g.hatena.ne.jp/takef/20061202