forked from em/receptty.org
Optimalizace vyhledávání
This commit is contained in:
parent
7ad17b3b30
commit
a2b3b189c4
@ -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>
|
||||||
|
Loading…
Reference in New Issue
Block a user