代码之家  ›  专栏  ›  技术社区  ›  lky

Javascript Click函数只对第一个元素起作用

  •  0
  • lky  · 技术社区  · 6 年前

    我在Javascript中有一个简单的click函数,我正在尝试使用它。我遇到的问题是click函数只对类中的第一个元素起作用,我希望在您单击类中的任何元素时触发它。

    const element = document.querySelector('.js-element')
    if ( element ) element.addEventListener('click', function () {
        alert('click');
    })
    

    谢谢

    3 回复  |  直到 6 年前
        1
  •  9
  •   Mamun    4 年前

    这个 querySelector() 返回第一个元素

    将事件附加到具有类的所有元素 js-element 必须使用 querySelectorAll()

    而且,您不需要 如果 这里的情况。

    const element = document.querySelectorAll('.js-element')
    element.forEach(function(el){
      el.addEventListener('click', function () {
        alert('click');
      });
    });
    
        2
  •  2
  •   Ankit Agarwal    6 年前

    querySelectorAll()

     const element = document.querySelectorAll('.js-element');
        if (element.length !== 0) {
          for (var i=0; i<element.length; i++) {
            element[i].addEventListener('click', function () {
              alert('click');
            });
          }
        }
    

    元素方法querySelectorAll()返回一个静态(非活动)节点列表,表示与指定选择器组匹配的文档元素列表。