From 40f1a49e6ec09844a9cd254938b6f263605385d4 Mon Sep 17 00:00:00 2001 From: bat Date: Mon, 10 Apr 2023 07:11:19 +0000 Subject: [PATCH] Updates to run inside or outside sandbox --- components/layout.js | 3 +++ components/nav-menu.js | 13 +++++++------ components/page.js | 2 +- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/components/layout.js b/components/layout.js index d95805e..40e1cf9 100644 --- a/components/layout.js +++ b/components/layout.js @@ -36,6 +36,9 @@ export class Layout extends HTMLElement { addEventListener('hashchange', () => { this.load() }) + this.addEventListener('hash-change', () => { + this.load() + }) } load() { diff --git a/components/nav-menu.js b/components/nav-menu.js index 99f6899..713f73d 100644 --- a/components/nav-menu.js +++ b/components/nav-menu.js @@ -42,16 +42,17 @@ export class NavMenu extends HTMLElement { this.shadowRoot.append(this.pageList) this.renderPageList() this.shadowRoot.addEventListener('click', e => { - if (this.handleLinks) { - e.preventDefault() - } if (e.target.classList.contains('page')) { + if (this.handleLinks) { + e.preventDefault() + } this.dispatchEvent(new CustomEvent( 'close-menu', {bubbles: true} )) - } - if (this.handleLinks) { - location.hash = `#${e.target.innerText}` + if (this.handleLinks) { + const hash = '#' + e.target.innerText + location.hash = hash + } } }) } diff --git a/components/page.js b/components/page.js index 71236e3..3e1dd58 100644 --- a/components/page.js +++ b/components/page.js @@ -131,7 +131,7 @@ export class Page extends HTMLElement { } display(value) { - let doc = value + let doc = value || '' if (!(/<\w/).test(doc.substring(0, 30))) { doc = `
` +
         doc.replace("<", "<").replace(">", ">") +