JS для обновления окна Location с URL, а не HASH
Я создаю веб-приложение для входа / регистрации и т. Д. И не хочу, чтобы страница обновлялась.
www.mysite.com
Я знаю, как установить хэш на URL, не обновляя страницу:
location.hash
дать: www.mysite.com/#signin
Но чего я хочу: www.mysite.com/signin
Без хэша, так что это оптимизировано для SEO. Кроме того, однажды я установил это. Как в JavaScript я могу прочитать первый путь после /, чтобы я мог обнаружить SignIn, Register,AboutUs и т. Д., И показать соответствующий контент?
Спасибо!
3 ответа
document.location = "signin";
Это обновит страницу. Нет способа обойти это без использования якоря (хеша).
Затем, чтобы прочитать страницу, на которой вы находитесь:
var page = document.location;
var path = page.pathname;
if (path == "signin") {
// do something
}
Если ваш "входящий" контент действительно находится на той же странице, то хеш не имеет никаких преимуществ или недостатков, поскольку страница будет сканироваться и индексироваться независимо от формата URL. Смотрите это ТАК сообщение.
Вы не можете изменить местоположение через JS без принудительной загрузки страницы. Только хеш-часть может быть изменена без принудительной загрузки страницы.