aboutsummaryrefslogtreecommitdiff
path: root/static/js/pagefind.search.js
diff options
context:
space:
mode:
authorJieiku2024-08-05 18:07:12 -0700
committerJieiku2024-08-05 18:07:12 -0700
commit6c195035966d1b1d2cac50f9aacc3617b3a0e475 (patch)
tree1e6b12dafd9d214ae86d09db96cab3119503e366 /static/js/pagefind.search.js
parent8e7498017f7d423cf45dc58dc9d254904ccd08d0 (diff)
downloadabridge-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.js22
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
+};