From e0ead8f3c6327c054c80480fd910e292601c8031 Mon Sep 17 00:00:00 2001 From: bel Date: Wed, 9 Feb 2022 22:30:01 -0700 Subject: [PATCH] nondestructive hash setting --- .../review/reinvent/ezmded/server/todo.yaml | 3 ++- spike/review/reinvent/ezmded/ui/index.html | 10 ++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) rename todo.yaml => spike/review/reinvent/ezmded/server/todo.yaml (95%) diff --git a/todo.yaml b/spike/review/reinvent/ezmded/server/todo.yaml similarity index 95% rename from todo.yaml rename to spike/review/reinvent/ezmded/server/todo.yaml index bc26274..74579de 100644 --- a/todo.yaml +++ b/spike/review/reinvent/ezmded/server/todo.yaml @@ -1,4 +1,5 @@ todo: -- https://developer.mozilla.org/en-US/docs/Web/API/History/pushState#change_a_query_parameter - preview default via q param - css +done: +- https://developer.mozilla.org/en-US/docs/Web/API/History/pushState#change_a_query_parameter diff --git a/spike/review/reinvent/ezmded/ui/index.html b/spike/review/reinvent/ezmded/ui/index.html index 5c96a20..a1dbb93 100644 --- a/spike/review/reinvent/ezmded/ui/index.html +++ b/spike/review/reinvent/ezmded/ui/index.html @@ -189,8 +189,14 @@ lastNavigateToQuery = new Date() const url = new URL(window.location) url.searchParams.set(k, v) - window.location.hash = "#?"+k+"="+v - //window.history.pushState({}, '', url) + var hash = "#?" + const it = url.searchParams.entries() + let result = it.next() + while (!result.done) { + hash = hash + result.value[0] + "=" + result.value[1] + "&" + result = it.next() + } + window.location.hash = hash } window.onhashchange = () => {