У меня есть функция. Он запускается из многих других функций скрипта. Иногда очень быстро и, возможно, почти одновременноПредотвращение слишком быстрого срабатывания функции
Как я могу предотвратить его слишком быстрое срабатывание в течение короткого времени? Установив задержку или таймер? Я хочу свести к минимуму вызовы базы данных, которые выполняет функция
Но не должно быть задержки в функции, если она не нужна .. Значение: Первый вызов = без задержки. Все остальные вызовы = только задержка, если предыдущий вызов был меньше, чем x секунд назад. А если задержка установлена на, скажем, 5 секунд, функция должна ждать только 1 секунду, если предыдущий вызов был сделан 4 секунды назад .. Надеюсь, вы понимаете, что я имею в виду)
function checkusers() {
$.ajax({
url: '/checkusers_in_db.php',
type: 'POST'
});
};
Возможный дубликат [Как предотвратить чрезмерные вызовы функций в JQuery] (http://stackoverflow.com/questions/9861823/how-to-prevent-excessive-function-calls-in-jquery) –
Вы можете использовать счетчик somwthing как var myCall = 0; затем myCall ++; внутри цикла функции, а затем продолжить по мере необходимости – swapnesh
Будет ли вызов возвращать разные результаты каждый раз? То есть вы можете «кэшировать» результат на клиенте за X секунд? – avesse