diff options
| author | Jieiku | 2024-08-05 18:07:12 -0700 |
|---|---|---|
| committer | Jieiku | 2024-08-05 18:07:12 -0700 |
| commit | 6c195035966d1b1d2cac50f9aacc3617b3a0e475 (patch) | |
| tree | 1e6b12dafd9d214ae86d09db96cab3119503e366 /static/js/pagefind.search.js | |
| parent | 8e7498017f7d423cf45dc58dc9d254904ccd08d0 (diff) | |
| download | abridge-6c195035966d1b1d2cac50f9aacc3617b3a0e475.tar.gz abridge-6c195035966d1b1d2cac50f9aacc3617b3a0e475.tar.bz2 abridge-6c195035966d1b1d2cac50f9aacc3617b3a0e475.zip | |
simplify switching search library
Diffstat (limited to 'static/js/pagefind.search.js')
| -rw-r--r-- | static/js/pagefind.search.js | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/static/js/pagefind.search.js b/static/js/pagefind.search.js index 3a61dc3..5936281 100644 --- a/static/js/pagefind.search.js +++ b/static/js/pagefind.search.js @@ -1,9 +1,6 @@ window.onload = function () { if (document.body.contains(document.goSearch)) { - options({ - basePath: "/js/" - }); - init(); + var loaded = false; document.goSearch.onsubmit = function () { return goSearchNow() }; /* @@ -60,17 +57,32 @@ window.onload = function () { document.addEventListener("keydown", inputFocus); document.addEventListener("click", function (event) { suggestions.contains(event.target) || suggestions.classList.add("d-none") }); + document.getElementById('searchinput').onfocus = function() { + if (!loaded) { + lazyLoad(); + loaded = true; + document.body.contains(document.goSearch) && (document.goSearch.onsubmit = function() { return goSearchNow() }) + } + document.getElementById('searchinput').onfocus = ''; + } + var lang = document.documentElement.getAttribute("lang"); var langOnly = lang.substring(0, 2); var baseUrl = document.querySelector("meta[name='base']").getAttribute("content"); if (baseUrl.slice(-1) == "/") { baseUrl = baseUrl.slice(0, -1); } + options({ + basePath: baseUrl + '/js/' + }); var index; searchinput.addEventListener('input', show_results, true); suggestions.addEventListener('click', accept_suggestion, true); + async function lazyLoad() { + await init(); + } // in page results when press enter or click search icon from search box function closeSearchNow() { @@ -244,4 +256,4 @@ window.onload = function () { document.goSearch.onsubmit = function () { return goSearchNow() }; }()); } -};
\ No newline at end of file +}; |
