Здравствуйте!
localStorage.setItem('globalTime', $.now());
var isThrottle = false;
const throttle = (func, ms) =>{
return function(){
if(isThrottle){
return;
}
func.apply();
isThrottle = true;
let difference;
let currentTime;
let timer = setInterval(() =>{
currentTime = $.now();
difference = Math.abs(currentTime - localStorage.getItem('globalTime'));
console.log(difference);
if(difference > ms){
clearInterval(timer);
recalls_results.html(`<div class="recalls__result recalls__result--succ">Отправляйте!</div>`);
recalls__reminder.removeClass('visible');
isThrottle = false;
setTimeout(() => recalls_results.html(''), 2000);
}
}, 1000);
}
}
Проблем в том, что difference изначально равен 2000 - 3000ms, а когда запускаю функцию второй раз, то оно вообще игнорирует условие.