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

javascript addEventListener多个类

  •  -2
  • genespos  · 技术社区  · 7 年前

    我试图将同一事件添加到两个不同的元素类中。
    我已经成功地将以下代码用于一个类:

        var MyClass = document.getElementsByClassName("BtnOptList");
        for (var ii = 0; ii < MyClass.length; ii++) {
            MyClass[ii].addEventListener('click', myFunction, false);
        }
    

    然后我尝试使用循环将事件添加到2个类中,但代码没有效果

    var Classes = array["BtnOptGroup", "BtnOptList"];
    for (var i=0; i<Classes.length; i++){
        var MyClass = document.getElementsByClassName(Classes[i]);
        for (var ii = 0; ii < MyClass.length; ii++) {
            MyClass[ii].addEventListener('click', myFunction, false);
        }
    }
    

    第二个代码出了什么问题?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Petrashka Siarhei    7 年前

    下一个代码中有错误: 您使用 array["BtnOptGroup", "BtnOptList"] , should be ["BtnOptGroup", "BtnOptList"] 我建议使用 document.querySelection() 而不是 document.getElementsByClassName() ,因为它更快。