У меня есть серия сообщений на моей странице, которые запускаются событием нажатия клавиши, когда люди начинают вводить текстовое поле. Однако я не могу понять, как запустить его только один раз. Поскольку люди вводят более длинные ответы, функция запускается при каждом нажатии клавиши :/
$(function() {
$(document).on('keydown', function() {
$('.three').delay(1000).fadeOut(1500);
$('.four').delay(2500).fadeIn(1500).delay(2000).fadeOut(1500);
$('.five').delay(7500).fadeIn(1500).delay(2000).fadeOut(1500);
$('.6').delay(12500).fadeIn(1500).delay(2000).fadeOut(1500);
$('.7').delay(17500).fadeIn(1500);
});
});
Возможный дубликат jquery запускает событие только один раз для статических и динамических элементов
Вместо «включено» используйте «один». Это обрабатывает событие только один раз.
$(function() {
$(document).one('keydown', function() {
$('.three').delay(1000).fadeOut(1500);
$('.four').delay(2500).fadeIn(1500).delay(2000).fadeOut(1500);
$('.five').delay(7500).fadeIn(1500).delay(2000).fadeOut(1500);
$('.6').delay(12500).fadeIn(1500).delay(2000).fadeOut(1500);
$('.7').delay(17500).fadeIn(1500);
});
});
Вот ссылка: http://api.jquery.com/one/
Вау, я думал, что ты просто саркастичен, потому что это казалось слишком простым. Удивительно, спасибо!!