Нижеприведённый код после blur
из пустого поля ввода бесконечно выдаёт alert
.
Почему?
В каких браузерах/ОС наблюдается это поведение?
ОС: Ubuntu 14.04.5 LTS
Браузер: Google Chrome 55.0.2883.87 (64-bit)
let limit = 0; // Ограничиваем число алертов, этот limit не относится к вопросу
function valid(el) {
if (!el.value && limit++<3) {
alert('Value is empty');
el.focus();
} else limit = 0;
}
<input onblur="valid(this)">
Дополнение:
Выполнение el.focus
на другой итерации event loop
прерывает порочный круг(хотя и не всегда):
function valid(el) {
if (!el.value) {
alert('Value is empty');
setTimeout(() => el.focus());
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как прокрутить веб страницу вниз при помощи чистого java scriptСтраница строится динамически по мере прокрутки вниз
Необходимо осуществить возможность смены скорости слайдовПопыталась сделать через ползунок, но не работает
Всем доброго дняПодскажите пожалуйста как можно стилизовать свое информационное окно на карте гугл? Буду рад любым подсказкам
Дело таково что надо сделать рекламный блок который движется снизу на вверх и исчезает, затем опять появляется снизу и так до бесконечности