我正在使用一个项目的index
添加一个动画延迟到我的网站上的元素。
这是HTML和JS
<div>
<div class="section section-1">
<div class="item item-1">
</div>
<div class="item item-2">
</div>
</div>
<div class="section section-2">
<div class="item item-1">
</div>
<div class="item item-2">
</div>
<div class="item item-3">
</div>
<div class="item item-4">
</div>
</div>
</div>
const AnimatedElements = document.querySelectorAll(".section .item");
AnimatedElements.forEach((AnimatedElement, index) => {
AnimatedElement.style.setProperty('--index-delay', ([index] * 250) + "ms");
});
现在,这确实有效。然而,我遇到的问题是JS将条目索引作为一个数组(即[0,1,2,3,4,5])读取,而不是在各自的节中读取两个单独的数组(即节1 [0,1],节2 [0,1,2,3])。
有什么办法可以让索引重置为0的每一个新的部分?否则,动画延迟只会越来越长,你进一步向下滚动页面。
1条答案
按热度按时间ozxc1zmp1#
使用嵌套循环。外层循环用于节,内层循环用于项。每个节中的项索引将从0开始。