我正在尝试制作一个每5秒更改一次图像的滑块。但是在控制台上说 “ changemementImages未在新的滑块上定义”
//change images every 5 sec
this.temps = setInterval(changemementImages, 5000);
this.image5Sec = changemementImages =()=>{
if(this.i >= 2){
this.i-=3;
document.getElementById("images").src = this.slide[this.i];
}
else if (this.i = 0){
document.getElementById("images").src = this.slide[++this.i];
}
}
答案 0 :(得分:0)
与声明的函数不同,箭头函数需要在使用之前进行初始化。 https://developer.mozilla.org/en-US/docs/Glossary/Hoisting
尝试在setInterval之前初始化changemementImages。
const changemementImages =()=>{
if(this.i >= 2){
this.i-=3;
document.getElementById("images").src = this.slide[this.i];
}
else if (this.i = 0){
document.getElementById("images").src = this.slide[++this.i];
}
}
this.temps = setInterval(changemementImages, 5000);
this.image5Sec = changemementImages;