@hadaev_ivan

Google Chrome Extension: addEventListener для созданного button

'sidebar' - div который создается content_script-ом моего расширения, в нем есть кнопка 'button' почему ниже приведенный код не срабатывает?
var sidebar = document.getElementById('sidebar');
    if (sidebar && sidebar.addEventListener) {
      sidebar.addEventListener('click',
          function (element) {
            switch (element.id) {
              case 'button':
                alert('button');
                break;
            }
          }, false);
    }

Спасибо за помощь)
  • Вопрос задан
  • 2709 просмотров
Решения вопроса 1
@hadaev_ivan Автор вопроса
Прошу прощение) не разобрался)
проблема кода была в том что переменная "element" хранила объект "MouseEvent", а не объект html элемента. Чтобы получить доступ к нему нужно было использовать "element.srcElement"
Собственно заменил "element.id" на "element.srcElement.id" - все стало как надо)
Рабочий код:
var sidebar = document.getElementById('sidebar');
    if (sidebar && sidebar.addEventListener) {
      sidebar.addEventListener('click',
          function (element) {
            switch (element.srcElement.id) {
              case 'button':
                alert('button');
                break;
            }
          }, false);
    }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы