fix: nav event with spa off, anchor nav refresh page
| | |
| | | try { |
| | | const url = new URL(href) |
| | | if (window.location.origin === url.origin) { |
| | | if (url.pathname === window.location.pathname) { |
| | | return !url.hash |
| | | } |
| | | return true |
| | | } |
| | | } catch (e) {} |
| | |
| | | window.addEventListener("click", async (event) => { |
| | | const { url } = getOpts(event) ?? {} |
| | | if (!url) return |
| | | if (url.pathname === window.location.pathname) return |
| | | event.preventDefault() |
| | | try { |
| | | navigate(url, false) |
| | |
| | | } else { |
| | | componentResources.afterDOMLoaded.push(` |
| | | window.spaNavigate = (url, _) => window.location.assign(url) |
| | | const event = new CustomEvent("nav", { detail: { slug: document.body.dataset.slug } }) |
| | | const event = new CustomEvent("nav", { detail: { url: document.body.dataset.slug } }) |
| | | document.dispatchEvent(event)`) |
| | | } |
| | | |