Как удалить хеш из window.location (URL) с JavaScript без обновления страницы?

Можно также хотеть считать этот статья (выберите файл pdf), который обсуждает Шаблоны разработки на ориентированных языках динамического объекта (т.е. Python). Заключить страницу в кавычки:

Данная статья исследует, как шаблоны от "Банды Четыре", или книга "GOF", как это часто называют, появляются, когда подобные проблемы решаются с помощью динамического, языка объектно-ориентированного программирования высшего порядка. Некоторые шаблоны исчезают - то есть, они поддерживаются непосредственно функциями языка, некоторые шаблоны более просты или имеют другой фокус, и некоторые чрезвычайно неизменны.

306
задан Rahul Gupta 9 July 2017 в 20:44
поделиться

1 ответ

Первоначальный вопрос:

window.location.href.substr(0, window.location.href.indexOf('#'))

или

window.location.href.split('#')[0]

оба вернут URL без хеша или чего-либо еще после него.

Что касается вашего редактирования:

Любые изменения в ] window.location запустит обновление страницы. Вы можете изменить window.location.hash без запуска обновления (хотя окно будет прыгать, если ваш хэш совпадает с идентификатором на странице), но вы не можете избавиться от знака решетки. Выбирайте, что хуже ...

САМЫЙ АКТУАЛЬНЫЙ ОТВЕТ

Правильный ответ о том, как это сделать, не жертвуя (полной перезагрузкой или оставив там знак решетки), здесь . Однако оставим этот ответ здесь, поскольку он был оригинальным в 2009 году, тогда как правильный ответ, использующий новые API-интерфейсы браузера, был дан через 1,5 года.

195
ответ дан 23 November 2019 в 01:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: