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回しか実行されないため、この場合、配列には2つのxqアイテムが含まれていることです。また、setInterval内で2回実行される場合、私の質問はこれを修正する方法です。 、つまり、インデックスインデックスを作成せずに、配列要素を変更するようなものです。事前に感謝します。USAJQUERYのような答えを期待しないでください。jqueryがこれを行うことは知っていますが、私は新しいことを調査しようとしていますが、この点で私をロックします。