Added debounce on search input (#8)

This commit is contained in:
ColinEspinas 2021-12-29 21:03:47 +01:00
parent da8797f5ef
commit c636be9089

View file

@ -10,7 +10,7 @@ window.onload = (event) => {
const length = searchInput.value.length;
searchInput.setSelectionRange(length, length);
searchInput.oninput = e => {
searchInput.oninput = debounce(e => {
console.log("Key", e.key);
console.log(searchInput.value);
@ -27,7 +27,7 @@ window.onload = (event) => {
ts.numItems = content.length;
});
});
};
});
// Handle moving the selected item up and down
document.addEventListener('keydown', (e) => {
@ -57,6 +57,15 @@ window.onload = (event) => {
};
function debounce(callback, timeout = 100){
let timer;
return (...args) => {
clearTimeout(timer);
timer = setTimeout(() => { callback.apply(this, args); }, timeout);
};
}
function selectNextItem() {
if (ts.selected === null) {
ts.selected = 0;