js错误记录

js中出现addEventListener is not a function,多半是侦听事件的事件源不对,事件源应该是一个元素,而非数组。

  1. getElementsByClassName getElementByTagName()获取到的都是数组,即使满足条件的元素只有一个,也是数组。
  2. 因此在事件监听时,必须加[0],否则会报如下错误
    在这里插入图片描述
  3. 上代码
var items = document.querySelectorAll('.item');
// getElementsByClassName捕捉到的是数组,需要加[0]或使用qs选择器
var preBtn = document.getElementsByClassName('pre');
var nextBtn = document.querySelector('.next');

//应该如下方式侦听
preBtn[0].addEventListener('click',function(){
	......
});
nextBtn.addEventListener('click',function(){
	.....
});

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐