diff options
author | tdro <tdro@noreply.example.com> | 2022-10-12 19:43:11 -0400 |
---|---|---|
committer | tdro <tdro@noreply.example.com> | 2022-10-12 19:43:11 -0400 |
commit | 05ff3effd89f3b75443bfcfce4455902c783d27f (patch) | |
tree | dd4b3969f8fe1b98e1e062c4519749d0fa200c7d /assets/js | |
parent | 320c736adaa6374fb0ac9988a64cbb1bd143425b (diff) | |
download | canory-05ff3effd89f3b75443bfcfce4455902c783d27f.tar.gz canory-05ff3effd89f3b75443bfcfce4455902c783d27f.tar.bz2 canory-05ff3effd89f3b75443bfcfce4455902c783d27f.zip |
static/js/pager: Keep it simple and restore on scroll change
Diffstat (limited to 'assets/js')
-rw-r--r-- | assets/js/index.js | 34 |
1 files changed, 3 insertions, 31 deletions
diff --git a/assets/js/index.js b/assets/js/index.js index 0e3f0a9..7a456ad 100644 --- a/assets/js/index.js +++ b/assets/js/index.js @@ -52,26 +52,6 @@ history.go(-1); } }; - const fragmentClear = (entries)=>{ - for(let entry = 0; entry < entries.length; entry++){ - if (self.location.hash) { - self.history.replaceState(null, "", url1); - } - } - }; - const fragmentRelease = (fragmentCallback)=>{ - try { - const fragmentObserver = new IntersectionObserver(fragmentCallback, { - threshold: 1.0 - }); - const fragments = document.querySelectorAll("[id]"); - for(let fragment = 0; fragment < fragments.length; fragment++){ - fragmentObserver.observe(fragments[fragment]); - } - } catch (error) { - console.log("The intersection observer is not supported", error); - } - }; self.addEventListener("DOMContentLoaded", function() { scrollRestore(url1); self.addEventListener("click", function(event) { @@ -80,19 +60,11 @@ backTrack(back, up, event); }); }); - let scrolls = 0; - let once = (action)=>{ - once = function() {}; - action(); - }; self.addEventListener("scroll", function() { scrollTrack(url1); - if (scrolls > 3) { - once(function() { - fragmentRelease(fragmentClear); - }); - } - scrolls++; + }); + self.addEventListener("hashchange", function() { + scrollRestore(url1); }); })(); (function() { |