我想纠正这个例子:
var $foo = $('#foo');
for (var i = 0; i < 10; i++) {
$foo.append($('<li></li>').text(i).on('click', function() {
alert(i);
}));
}
以便它i
在单击时提醒正确的值。
我怎样才能做到这一点?我知道答案是使用闭包,但我不确定如何实现它。
我试过做
$foo.append($('<li></li>').text(i).on('click', function() {
return (function(i) {
alert(i);
})();
}));
但这会返回undefined
。
JSFiddle在这里:http: //jsfiddle.net/tmcw/4phm7/1/