Поддельные JS думать, что URL-адрес имеет дополнительный параметр
У меня есть скрипт, включенный в мой сайт, который читает переменную по URL-адресу, например www.test.com/?mboxDisable=1, поэтому мне было интересно, как подделать это, так что на www.test.com js "подумал бы", что есть mboxDisable = 1 Я знаю coldfusion и могу это сделать, просто используя первую строку, но как это сделать с помощью js? Я пробовал document.location.href += "mboxDisable=1", но затем js обновляет страницу до www.test.com/?mboxDisable=1. Есть ли способ заставить js думать, что параметр в url фактически не находится в URL?
Я забыл упомянуть использование: у меня есть cookie, который я проверяю, чтобы увидеть, хочет ли пользователь отключить mbox или нет, в псевдокоде было бы что-то вроде, если cookieIsSet urlAppend("mboxDisable=1") endif
Автоматически сгенерированный код, который я не могу изменить, получает информацию из document.location. любой способ отредактировать это, не обновляя страницу? Нет HTML5 и нет JQuery. Можно использовать Coldfusion и JS.
2 ответа
Используйте HTML5 pushState, с помощью которого можно изменить URL-адрес страницы без обновления страницы.
Используйте URL-хэш вместо параметра:
mysite.com?mboxDisable=1
будет выглядеть так: mysite.com#mboxDisable=1
Вы можете использовать document.location.hash
и читать и устанавливать этот параметр без обновления. Конечно, ваш код должен будет иметь возможность прочитать это значение.
Все остальные методы изменения URL приведут к загрузке новой страницы.