我最近开始学习JS库,并尝试使它们处于活动状态时将按钮(单击点时向下滑动的幻灯片)变白。
我得到这个错误:
TypeError:slides.forEach不是函数
我的代码是:
function init() {
// wrapper function
const slides = document.querySelectorAll(".slide");
const pages = document.querySelectorAll(".page");
const backgrounds = [
`radial-gradient(#2B3760, #0B1023)`,
`radial-gradient(#4E3022, #161616)`,
`radial-gradient(#4E4342, #161616)`
];
slides.forEach((slide, index) => {
slide.addEventListener("click", function(){
changeDots(this);
});
});
function changeDots(dot) {
slides.forEach(slide => {
slide.classList.remove("active");
});
dot.classList.add("active");
}
}
init();
我做错了什么?我猜这是关于Arrows的,但是仍然不明白为什么我的朋友可以运行它并且它起作用,而对我来说却没有。 (我将GSAP中的TweenMax.min.js和TimelineMax.min.js添加到了我的html中)[在此之前,我遇到了“ querySelectorALL”相同的问题,我删除了“ ALL”,Chrome停止喊它也不是函数。
谢谢!
因为不是array
,所以必须使用querySelectorAll
const nodes = document.querySelectorAll(".slide");
nodes.forEach.call(nodes, node => {
console.log(node.innerHTML)
});
<div class="slide">
1st slide
</div>
<div class="slide">
2nd slide
</div>