Ломаю себе голову уже второй час. Может кто поможет:
$('#mybtn').click(function() {
myfunc();
});
function myfunc() {
console.log('запустили функцию')
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="mybtn" class=""><h1>кнопка</h1></button>
Мне нужно сделать так, чтобы console.log запускался при условии, что прошло не меньше 5 секунд с первого запуска функции. Хочу это сделать внутри myfunc()
Тоесть человек кликает на кнопку #mybtn, функция выполняется, дальше если человек еще 10 раз кликает на кнопку на протяжении 5 секунд то ничего не срабатывает. Функция начинает работать опять через 5 секунд, и с таким интервалом.
Помогите, а)
Все что нужно это, это отключит кнопку, зачем ее кликать.
this.disabled = true;
setInterval(() => {
this.disabled = false;
}, 5000);
$('#mybtn').click(function() {
myfunc();
this.disabled = true;
setInterval(() => {
this.disabled = false;
}, 5000);
});
function myfunc() {
console.log('запустили функцию')
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="mybtn" class=""><h1>кнопка</h1></button>
mybtn_enabled = true;
$('#mybtn').click(function() {
myfunc();
});
function myfunc(){
if (mybtn_enabled) {
mybtn_enabled = false;
setTimeout(function(){
mybtn_enabled = true;
}, 5000);
console.log('запустили функцию');
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="mybtn" class=""><h1>кнопка</h1></button>
Пока флаг свободен - производим действия, ставим флаг, по таймеру освобождаем флаг. Если флаг занят - ничего не делаем.
var flag = true;
function myfunc(){
if(flag) {
console.log('запустили функцию');
flag = false;
setTimeout(function() {
flag = true;
}, 5000);
}
}
Добавьте в список переменных значение time и используйте таймер
Я могу ошибаться, но вроде, это будет работать:
var time = true;
$('#mybtn').click(function() {
if (time = true) myfunc();
});
function myfunc(){
console.log('запустили функцию')
time = false;
setTimeout(function(){time = true;}, 5000);
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть Vue приложениеС него идёт запрос к API для получения данных о пользователе
Я не понимаю, почему не выходит повторить анимациюТо есть при нажатии на пробел я ожидаю, что вылетит столько чёрных блочков, сколько нажатий...
Имеем такие блокиВ подменю 2 Блок2 появляется новая строка, при ее появлении нужно убрать другую строку
На сайте есть светлая и темная темаДля каждой срабатывает свой фон