【发布时间】:2011-02-02 12:28:57
【问题描述】:
我正在从一个多维数组构建一个 jquery 动画,并且在每次迭代的回调中我想使用数组的一个元素。但是不知何故,我总是以数组的最后一个元素而不是所有不同的元素结束。
html:
<div id="square" style="background-color: #33ff33; width: 100px; height: 100px; position: absolute; left: 100px;"></div>
javascript:
$(document).ready(function () {
// Array with Label, Left pixels and Animation Lenght (ms)
LoopArr = new Array(
new Array(['Dog', 50, 500]),
new Array(['Cat', 150, 5000]),
new Array(['Cow', 200, 1500])
);
$('#square').click(function() {
for (x in LoopArr) {
$("#square").animate({ left: LoopArr[x][0][1] }, LoopArr[x][0][2], function() {
alert (LoopArr[x][0][0]);
});
}
});
});
`
当前结果:牛,牛,牛
想要的结果:狗、猫、牛
如何确保回调中返回了相关的数组元素?
【问题讨论】:
标签: javascript jquery callback jquery-animate