我有一些函数返回 getById getByClass 和一个具有 id 或类的 html 元素数组。问题是我想将这样的动画应用于每个元素和这些数组,每个人都平等地在一个函数中,我现在有这个。
var slideDown = function (elem, to) {
var e = getById(elem),
st, i;
if (e == false) {
e = getByClass(elem);
}
for (var i in e) {
//alert(e[i].offsetHeight + e[i].nodeName + e[i].textContent.trim());
st = setInterval(doAnim(e[i]), 1000);
function doAnim(e, h) {
h = e.offsetHeight;
if (h < to) {
e.style.height = h + "px";
h++;
console.log(h);
doAnim(e[i], h);
}
}
}
}
问题是因为 for 循环中的动画函数只会运行两次,在这种情况下,数组包含 2 个 xq 项目,如果我放出也运行两次 xq for setInterval is inside,我的问题是如何解决这个问题,我的意思是,就像修改数组元素一样,不必去索引索引。在此先感谢,不要指望像 USA JQUERY 之类的答案,我知道 jquery 会这样做,但我正在尝试调查新事物,但在这方面锁定了我。