如果我有以下代码:
var Object = function() {
this.alert = function() {
alert("Hello World!");
}
}
Object.prototype.bindTo = function(element) {
var me = this;
$(element).bind('click', function() {
//this.alert(); //this refrences element
me.alert();
});
}
我的问题是,这是调用Object.alert()函数的最佳实践。使用this.alert()会尝试将元素作为'this'对象。目前这种情况的立场是什么?
答案 0 :(得分:1)
您可以使用bind
更改函数内this
的含义...
Object.prototype.bindTo = function(element) {
$(element).bind('click', function() {
this.alert(); //this references whatever you put inside bind()
}.bind(this));
}