Доступ к HTMLCollection - PullRequest
       16

Доступ к HTMLCollection

0 голосов
/ 04 июня 2018

Итак, я пытаюсь получить доступ ко всем именам классов, а затем, в конце концов, объявляю их слушателем событий.Я делаю это таким образом, потому что я строю график hightcharts и не могу добавлять события кликов специально для элементов легенды.Поэтому после построения графика я пытаюсь получить доступ к кнопкам, а затем добавить прослушиватель событий.

  getButtons() {    
    let buttons = document.getElementsByClassName('legend-btn');
    console.log(buttons);
    console.log(buttons[0]);
  },

Первый console.log возвращается с HTMLCollection длиной 48 (я знаю очень долго, но сейчас это больше целей тестирования, чем что-либо еще).
Второй console.log возвращаетсякак неопределено.Есть идеи почему?Я надеялся сделать что-то вроде этого:

    for (let i = 0; i < buttons.length; i++) {
      buttons[i].addEventListener('click', function () {
        changebackground(event);
      });
    }

Какие-либо предложения о том, как я могу добавить событие щелчка для недавно построенного графика высоких диаграмм?

1 Ответ

0 голосов
/ 04 июня 2018

Могу ли я предложить вам попробовать:

for (let button of buttons) {
  button.addEventListener('click', changebackground);
}

Я не уверен, почему вы намеревались позвонить changebackground(event): чтобы сделать это, вы должны поставить event в событиескобки слушателя.Лучше передайте changebackground напрямую (при условии, что оно принимает событие в качестве параметра).

Я не совсем уверен в том, что говорю вам: трудно сказать, не видя больше контекста.

...