$.proxy()
$.proxy()は関数に特定のコンテキストを提供する為のメソッドです。
第1引数に関数を指定し、第2引数にコンテキストとなるオブジェクトを指定します。こうすることでコンテキストとして利用されるオブジェクトを関数内でthisとして参照することが可能です。
var hoge = $.proxy(function(){
alert(this.foo)
},{foo:"bar"});
hoge();//alert "bar"
第1引数でコンテキストを指定し、第2引数でコンテキスト内の関数オブジェクトのプロパティ名を指定することも可能です。
var obj = {
name: "John",
foo: function() {
alert(this.name)
}
};
var fuga = $.proxy(obj,"foo");
fuga();//alert "John"
第3引数以降に関数内で参照できる引数を指定することができます。
var hoge = $.proxy(function(e1,e2){
alert(e1+e2)
},{foo:"bar"},"fuga1","fuga2");
hoge();// alert "fuga1fuga2"
jQuery 1.4.0での追加/変更$.proxy()はjQuery 1.4.0で追加されたメソッドです
jQuery 1.6.0での追加/変更jQuery 1.6.0で第3引数の設定が追加されました。
参考URL
jQuery.proxy() | jQuery API Documentation
登録日 : 2013年03月18日 最終更新日 : 2013年3月18日