Optimalizace vyhledávání

This commit is contained in:
Emil Miler 2022-12-12 14:59:39 +01:00
parent 7ad17b3b30
commit a2b3b189c4

View File

@ -19,23 +19,17 @@
<script> <script>
let input = document.getElementById("input"); let input = document.getElementById("input");
input.oninput = function() { filter_name(input.value) }; input.oninput = function() { filter_name(input.value) };
let articles = document.getElementsByTagName("article"); let articles = Array.from(document.getElementsByTagName("article"));
for (let i=0; i<articles.length; i++) { articles.forEach(article => article.dataset.title = article.dataset.title.normalize("NFD").replace(/\p{Diacritic}/gu, ""));
articles[i].dataset.title = articles[i].dataset.title.normalize("NFD").replace(/\p{Diacritic}/gu, "");
}
function filter_name(str) { function filter_name(str) {
str = str.toLowerCase().normalize("NFD").replace(/\p{Diacritic}/gu, ""); str = str.toLowerCase().normalize("NFD").replace(/\p{Diacritic}/gu, "");
if (str.length==0) { if (str.length==0) {
for (let i=0; i<articles.length; i++) { articles.forEach(article => article.style.display = "flex");
articles[i].style.display = "flex";
}
} else { } else {
for (let i=0; i<articles.length; i++) { articles.forEach(article => article.style.display = article.dataset.title.indexOf(str.toLowerCase()) === -1 ? "none" : "flex");
articles[i].style.display = !articles[i].dataset.title.includes(str) ? "none" : "flex";
}
} }
} }
</script> </script>