Где ошибка в js?
В JS ошибки нету, он работает правильно.
Ошибка в логике вашего кода. Вы сначала удаляете с элемента класс в forEach, затем сразу же включаете обратно в if.
Удалите строчку Array.from(listItems).forEach((cl) => cl.classList.remove("active")); и все заработает