我无法将 k 的值传递给 fadeOut 函数的回调函数。我的循环如下所示。
for(var k=0;k<image1.length;k++)
{
$(img[k]).fadeOut(200,function(k) {
alert(k);
$(this).attr('src', image2[k]);
$(this).fadeIn(200);
});
}
我无法将 k 的值传递给 fadeOut 函数的回调函数。我的循环如下所示。
for(var k=0;k<image1.length;k++)
{
$(img[k]).fadeOut(200,function(k) {
alert(k);
$(this).attr('src', image2[k]);
$(this).fadeIn(200);
});
}
jQueryfadeOut
函数采用不带参数的回调函数。从jQuery 文档中,“回调未发送任何参数”。如果要捕获 的值k
,请执行以下操作:
for(var k=0;k<image1.length;k++) {
(function(k) {
$(img[k]).fadeOut(200,function() {
alert(k);
$(this).attr('src', image2[k]);
$(this).fadeIn(200);
});
})(k);
}
您必须执行以下操作才能使回调访问您的变量:
for (var k = 0; k < image1.length; k++) {
(function(k) {
$(img[k]).fadeOut(200, function() {
alert(k);
this.src = image2[k];
$(this).fadeIn(200);
});
})(k);
}