2013-06-24 12 views
3

Можно ли изменить весь URI страницы без перезагрузки страницы и фактически перейти к новому URI? Я знаю, что мы можем изменить URL-адрес относительно корневого домена, т. Е. Stackoverflow.com -> stackoverflow.com/asdfИзменить ENTIRE URL без перезагрузки страницы

Можно ли это сделать?

stackoverflow.com -> quora.com


Я прошу, чтобы убедиться, что это не возможно.

EDIT: Этот вопрос отличается от того, что я спрашиваю, можно ли изменить не только путь после домена, но и сам домен.

+1

Я думаю, что вопрос касается изменения URI без изменения имени домена, т.е. stackoverflow.com -> stackoverflow.com/asdf – earllee

+0

Надеюсь, [этот пост] (http://stackoverflow.com/questions/824349/modify-the -url-without-reloading-the-page). –

ответ

3

Похоже, что это невозможно изменить домен, дизайн:

http://badassjs.com/post/840846392/location-hash-is-dead-long-live-html5-pushstate

Цитируя статью:

window.history.pushState (данные, "Title", "/ новый URL");

Последний аргумент - новый URL. По соображениям безопасности вы можете только изменить путь к URL-адресу, а не самому домену.

+0

Спасибо. Это тот ответ, который я искал. – earllee

0

Боролся с этим вопросом раньше и не мог найти способ сделать это без перезагрузки ... Это часть объекта Location http://www.w3schools.com/jsref/obj_location.asp. Он перезагружает страницу, даже если вы изменяете параметры запроса, что имеет смысл, в конце концов, это другой URL-адрес. Единственное, что вы можете сделать до сих пор, это играть с параметрами # (hash).

Одна вещь, которая может вам помочь, это API истории HTML5 http://html5demos.com/history. Он изменяет URL-адрес так, как вам нужно, но только для субдоменов.

1

Отвечая вам вопрос о том, можно ли следующее сделать:

stackoverflow.com -> quora.com 

Использование истории HTML API один только позволил выдвинуть государства в URLs одного и того же домена, таким образом, ответ нет ,

+1

Спасибо. Это тот ответ, который я искал. – earllee