我有一页,有100个箱子被打上顶顶,打上了间歇。 我想用一些 j笑 an来模拟这种 te,使其回旋并产生连锁反应。
我第一次尝试这样做:
$("#teetering-tester").click(function () {
$("#box-stack div").each(function (id) {
$(this).animate({ margin-right : "+=3px" }, 300 + id, function () {
$(this).animate({ margin-right : "-=3px" }, 300 + id);
});
});
return false;
});
但是,这使得整个方面走向正确,进而走向正确。
我希望产生连锁反应。 因此,我试图以定时的方式打开新的天线:
$("#doTeeter").click(function () {
$("#output").append("<li>Starting</li>");
$("#box-stack div").each(function (id) {
setTimeout($(this).animate({ margin-right : "+=3px" }, 300 + id, function () {
$(this).animate({ margin-right : "-=3px" }, 300 + id);
}), 700, function () {
$("#output").append("<li>I m done</li>");
});
});
return false;
});
整条主食一成不变。
我随后尝试:
$("#doTeeter").click(function () {
$("#box-stack div").each(function (id) {
setTimeout(teeterStack(id), 700);
});
return false;
});
...
function teeterStack(id) {
$("#box-stack div").eq(id)
.animate({ margin-right : "+=3px" }, 500 + id, function () {
$(this).animate({ margin-right : "-=3px" }, 300 + id);
});
});
}
但是,他们仍然走到一起。
How can I make a ripple effect across my 100 boxes?
任何帮助都将受到赞赏。
Thanks, Scott
Update
奥赫先生,我刚刚注意到,我试图增加一些变异性,使估计时间成为300米的功能,加上该项目的id。
Update 2
我只是试图这样做,这是一件事。
function teeterStack(id) {
$("#box-stack div").eq(id)
.animate({ margin-right : "+=3px" }, getTime(id), function () {
$(this).animate({ margin-right : "-=3px" }, getTime(id));
});
}
function getTime(id) {
var min = 300, max = 2000, step = (max-min)/100;
return (step*id) + min;
}
但是,我没有知道拖延,所以我会让那枪。