|
@@ -10,7 +10,7 @@ window.onload = (event) => {
|
|
const length = searchInput.value.length;
|
|
const length = searchInput.value.length;
|
|
searchInput.setSelectionRange(length, length);
|
|
searchInput.setSelectionRange(length, length);
|
|
|
|
|
|
- searchInput.oninput = e => {
|
|
|
|
|
|
+ searchInput.oninput = debounce(e => {
|
|
console.log("Key", e.key);
|
|
console.log("Key", e.key);
|
|
console.log(searchInput.value);
|
|
console.log(searchInput.value);
|
|
|
|
|
|
@@ -27,7 +27,7 @@ window.onload = (event) => {
|
|
ts.numItems = content.length;
|
|
ts.numItems = content.length;
|
|
});
|
|
});
|
|
});
|
|
});
|
|
- };
|
|
|
|
|
|
+ });
|
|
|
|
|
|
// Handle moving the selected item up and down
|
|
// Handle moving the selected item up and down
|
|
document.addEventListener('keydown', (e) => {
|
|
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() {
|
|
function selectNextItem() {
|
|
if (ts.selected === null) {
|
|
if (ts.selected === null) {
|
|
ts.selected = 0;
|
|
ts.selected = 0;
|