aboutsummaryrefslogtreecommitdiff
path: root/assets/js
diff options
context:
space:
mode:
authortdro <tdro@noreply.example.com>2023-09-16 04:50:54 -0400
committertdro <tdro@noreply.example.com>2023-09-16 04:50:54 -0400
commit4bbbed1adcd354719eda137ac4a3c71da23e929d (patch)
tree2a131bbfdf12db16af91e084e027a415f1534de4 /assets/js
parent344acdcd6245496feb440cd362b8aa9fdb8ad776 (diff)
downloadcanory-4bbbed1adcd354719eda137ac4a3c71da23e929d.tar.gz
canory-4bbbed1adcd354719eda137ac4a3c71da23e929d.tar.bz2
canory-4bbbed1adcd354719eda137ac4a3c71da23e929d.zip
static/js/pager: Cover click and touchstart
DOMContentLoaded fragment
Diffstat (limited to 'assets/js')
-rw-r--r--assets/js/index.js18
1 files changed, 11 insertions, 7 deletions
diff --git a/assets/js/index.js b/assets/js/index.js
index 8329e09..9895067 100644
--- a/assets/js/index.js
+++ b/assets/js/index.js
@@ -12,16 +12,14 @@
const url = self.location.href.split("#")[0].split("?")[0];
const scrollRestore = function(url) {
if (history.scrollRestoration) history.scrollRestoration = "manual";
- if (localStorage[key]) {
- settings = JSON.parse(localStorage[key]);
- }
+ if (localStorage[key]) settings = JSON.parse(localStorage[key]);
const fragment = document.getElementById(location.hash.slice(1));
const fragmentInURL = self.location.hash.length > 0;
if (fragmentInURL && document.body.contains(fragment)) {
settings["pager"][url] = self.pageYOffset;
localStorage[key] = JSON.stringify(settings);
fragment.scrollIntoView();
- self.addEventListener("load", function() {
+ self.addEventListener("DOMContentLoaded", function() {
fragment.scrollIntoView();
});
return;
@@ -57,12 +55,18 @@
backTrack(back, up, event);
});
});
- self.addEventListener("scroll", function() {
- scrollTrack(url);
- });
self.addEventListener("hashchange", function() {
scrollRestore(url);
});
+ [
+ "click",
+ "touchstart",
+ "scroll"
+ ].forEach(function(event) {
+ self.addEventListener(event, function(event) {
+ scrollTrack(url);
+ });
+ });
})();
(function() {
function check(url, method, callback) {