我通过在块中添加和删除一个类active来进行块切换。
var blocks = document.querySelectorAll('.block');
next.addEventListener('click', function () {
blocks.forEach(function (val, id) {
if (val.classList.contains('active')){
val.classList.remove('active');
}
})
})
<div class="content">
<div class="arrow left" id="prev">
<button>left</button>
</div>
<div class="block active" id="block1">
block1
</div>
<div class="block" id="block2">
block2
</div>
<div class="block" id="block3">
block3
</div>
<div class="block" id="block4">
block4
</div>
<div class="arrow right" id="next">
<button>right</button>
</div>
</div>
现在在val.classList.remove('active');
我需要写入val.classList.add('active');数组的下一个元素之后。问题是,如何使用完全循环来完成forEach?
这是一个没有循环的版本。