我搜索了stackoverflow和其他各种网站,似乎无法解决这个难题。
我的目标是使用带有div id的数组将jQuery函数连续应用于div。
我有以下代码由于某种原因无效:
$(document).ready(function(){
$('#click').click(function(){
var layout_list = ['1','2','3','4','5','6','7','8','9','10'];
load_delay = 50;
for (i = 0; i < layout_list.length; i++ ) {
load_delay = load_delay+50;
setTimeout(function(){
$("#l_"+layout_list[i]).css("visibility","visible");
$("#l_"+layout_list[i]).addClass("bounceIn");
},load_delay);
}
});
});
答案 0 :(得分:1)
你必须使用一个闭包,例如:
for (i = 0; i < layout_list.length; i++) {
load_delay = load_delay + 50;
(function (i) {
setTimeout(function () {
$("#l_" + layout_list[i]).css("visibility", "visible");
$("#l_" + layout_list[i]).addClass("bounceIn");
}, load_delay);
}(i));
}