参考Javascript“;“类”;来自jQuery函数的方法
如何从jQuery函数引用Javascript中的父“类”方法?例如:参考Javascript“;“类”;来自jQuery函数的方法,javascript,jquery,object,this,prototype-programming,Javascript,Jquery,Object,This,Prototype Programming,如何从jQuery函数引用Javascript中的父“类”方法?例如: $Object.prototype.TestFunction = function(arg){ alert(arg); } $Object.prototype.foo = function(){ $(something).click(function(){ this.TestFunction("Hello"); //Obviously doesn't work. }); } 我有可预测
$Object.prototype.TestFunction = function(arg){
alert(arg);
}
$Object.prototype.foo = function(){
$(something).click(function(){
this.TestFunction("Hello"); //Obviously doesn't work.
});
}
我有可预测的数据集,需要对多个数据集和页面上查看的结果进行操作,这就是为什么我构建了一个对象来处理它。然而,当我使用任何“jQuery”并试图从内部引用对象属性或方法时,它显然不起作用
这可能吗
非常感谢您提前花了大量时间和精力。只需将
此
分配给一个变量,并在闭包中引用该变量即可
$Object.prototype.foo = function(){
var that = this; //<--here
$(something).click(function(){
that.TestFunction("Hello");
});
};
$Object.prototype.foo=function(){
var=this;//只需将this
赋值给一个变量,并在闭包中引用该变量
$Object.prototype.foo = function(){
var that = this; //<--here
$(something).click(function(){
that.TestFunction("Hello");
});
};
$Object.prototype.foo=function(){
var that=this;//我首选的方法是使用$.proxy:
$Object.prototype.foo = function(){
$(something).click($.proxy(this.TestFunction,this);
};
$Object.prototype.foo=函数(){
$(某物)。单击($.proxy(this.TestFunction,this);
};
它更简洁,还可以将任何参数(如事件)传递给处理函数。我首选的方法是使用$。代理:
$Object.prototype.foo = function(){
$(something).click($.proxy(this.TestFunction,this);
};
$Object.prototype.foo=函数(){
$(某物)。单击($.proxy(this.TestFunction,this);
};
它更干净,还可以将任何参数(如事件)传递给处理程序函数