From adc538b3ff932a5bc39a309a51a2802ab315d4e0 Mon Sep 17 00:00:00 2001 From: Pi-Hsun Shih Date: Tue, 7 Apr 2020 23:28:13 +0800 Subject: [PATCH] Change from hash to query string. --- js/scripts.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/js/scripts.js b/js/scripts.js index 49750dd..f958765 100644 --- a/js/scripts.js +++ b/js/scripts.js @@ -8,8 +8,8 @@ function get_prices_from_localstorage() { return sell_prices; } -function get_prices_from_hash() { - const params = new URLSearchParams(window.location.hash.substr(1)); +function get_prices_from_query() { + const params = new URLSearchParams(window.location.search.substr(1)); const sell_prices = params.get("prices").split(".").map((x) => parseInt(x, 10)); if (!Array.isArray(sell_prices) || sell_prices.length !== 14) { @@ -22,7 +22,7 @@ function get_prices_from_hash() { $(document).ready(function () { try { // load sell_prices from URL hash first, then local storage - const sell_prices = get_prices_from_hash() || get_prices_from_localstorage(); + const sell_prices = get_prices_from_query() || get_prices_from_localstorage(); if (sell_prices == null) { return; @@ -71,7 +71,8 @@ $(document).on("input", function() { localStorage.setItem("sell_prices", JSON.stringify(sell_prices)); const params = {"prices": sell_prices.map((x) => isNaN(x) ? "" : x).join(".")}; - window.location.hash = (new URLSearchParams(params)).toString(); + const query_string = `?${new URLSearchParams(params).toString()}`; + window.history.replaceState(null, null, query_string); const is_empty = sell_prices.every(sell_price => !sell_price); if (is_empty) {