Задать вопрос
ASultonov
@ASultonov

Почему событие blur() для li не работает?

Есть примерно такой список:
<ul id="faq" class="faq">
  <li>
    Lorem ipsum...
  </li>

  <li>
    Lorem ipsum...
  </li>

  ...
</ul>

Собирался отловить blur для всех li и... короче это не важно. А важно то, что написал вот такой (тоже примерно) код, и понял что функция не работает :(
var faq = document.getElementById('faq'),
    qas = faq.getElementsByTagName('li');

for (i = 0; i < qas.length; i++) {
  qas[i].addEventListener('blur', qasBlur, false);
}

function qasBlur() {
  alert('Я работаю!');
}

Скажите пожалуйста, что я делаю не так?
  • Вопрос задан
  • 2411 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 2
BuriK666
@BuriK666
Компьютерный псих
Добавьте к LI tabindex
jsfiddle.net/mc4tN/2
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
blur не работает так как небыло focus. А focus небыло потому что это обычный li а не элемент формы. Как верно сказал Андрей Буров, добавление атрибута tabindex позволит выставлять фокус на этот элемент, а следовательно появится и событие blur.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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