Слава Україні!

debounce - функция задержки ввода

debounce - функция задержки ввода JavaScript

HTML


<div id="wrapper">
    <input id="input" type="text" placeholder="input something..." />
    <span id="target"></span>
</div>

JavaScript


function debounce(cb, interval, immediate) {
    var timeout;
    
    return function() {
        var context = this, args = arguments;
        var later = function() {
            timeout = null;
            if (!immediate) cb.apply(context, args);
        };          
    
        var callNow = immediate && !timeout;
    
        clearTimeout(timeout);
        timeout = setTimeout(later, interval);
    
        if (callNow) cb.apply(context, args);
    };
};
    
function keyPressCallback() {
    var target = document.getElementById('target');
    var input = document.getElementById('input');
    
    target.textContent = input.value;
}

document.getElementById('input').onkeypress = debounce(keyPressCallback, 400);

Важлива інформація

Міністерство оборони
України
з 24.02 по 17.06
втрати противника
орієнтовно склали:
527390 ( +1080 ) особового складу
7958 ( +2 ) танків
15287 ( +18 ) бойових бронемашин
13927 ( +14 ) артилерійських систем
1104 ( +0 ) РСЗВ
853 ( +0 ) засоби ППО
359 ( +0 ) літаків
326 ( +0 ) гелікоптерів
18991 ( +24 ) автомобільної техніки
28 ( +0 ) кораблі / катери
2296 ( +0 ) крилаті ракети
11167 ( +8 ) БПЛА
2337 ( +12 ) спец. техніки
4 ( +0 ) установок ОТРК/ТРК
1 ( +0 ) war.submarines

Поиск