如何从之前的功能中检索this
?
function bla(my_array) {
image_tag[this] = $('<img src="'+ random_url +'"/>');
image_tag[this].appendTo('body');
image_tag[this].bind('load', function () {
alert('this'); //instead of alerting "image_tag[4]", I'd like to alert its array "4"
});
});
}
bla(4);
答案 0 :(得分:0)
使用$ .proxy绑定您之前的&#34;此&#34;到新功能:
image_tag[this].load($.proxy(function() {
alert(this);
},this));
答案 1 :(得分:0)
我认为您的示例代码不像您认为的那样工作:http://jsfiddle.net/eSwf7/
但是假设在你的实际代码中,一切正常,你只想从click处理程序中的外部函数引用this
,你可以这样做:
function bla(my_array) {
var that = this;
image_tag[this].bind('load', function () {
alert(that); //instead of alerting "image_tag[4], I'd like to alert 4
});
}