当一切正常时,为什么我得到'addEventListener'的错误?

时间:2016-12-10 10:52:18

标签: javascript

您好我正在尝试为客户端制作图片滑块

我在控制台中收到此错误 - >未捕获的TypeError:无法读取未定义的属性“addEventListener”

即使一切都运转良好?控制台发生了什么事?我似乎无法弄清楚

1 个答案:

答案 0 :(得分:1)

首先,您的链接包含不合适的内容,但顺便说一下,您的代码(main.js)是:

//IMAGE SCROLL
var slideLeft = document.getElementsByClassName('slideLeft');
var slideRight = document.getElementsByClassName('slideRight');
var imagesWrapper = document.getElementsByClassName('imagesWrapper');

var nrOfImageWrappers = imagesWrapper.length;

for(let i = 0; i <= nrOfImageWrappers; i++){
  slideLeft[i].addEventListener('click', function(){
    imagesWrapper[i].scrollLeft += -150;
  });

  slideRight[i].addEventListener('click', function(){
    imagesWrapper[i].scrollLeft += 150;
  });
}
  1. let i = 0; i <= nrOfImageWrappers; i++,在最后一回合导致索引超出范围,因为length属性计算项目数,但其索引从0开始,因此,你需要i < nrOfImageWrappers