From f4e589b7f824837e4ae5e86e124b6e7f9e5eacc7 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sat, 21 Jan 2023 23:38:29 +0100 Subject: handle popstate --- server/src/routes/ui/style/transition.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'server/src') diff --git a/server/src/routes/ui/style/transition.js b/server/src/routes/ui/style/transition.js index 5ee7f80..dd2d319 100644 --- a/server/src/routes/ui/style/transition.js +++ b/server/src/routes/ui/style/transition.js @@ -5,17 +5,25 @@ globalThis.addEventListener("load", () => { patch_page() }) +globalThis.addEventListener("popstate", ev => { + transition_to(window.location.href) +}) + function patch_page() { document.querySelectorAll("a").forEach(el => { el.addEventListener("click", async ev => { ev.preventDefault() - const trigger_load = prepare_load(el.href) - await fade(false) - trigger_load() + await transition_to(el.href) }) }) } +async function transition_to(href) { + const trigger_load = prepare_load(href) + await fade(false) + trigger_load() +} + function prepare_load(href) { const r_promise = fetch(href) return async () => { -- cgit v1.2.3-70-g09d2