JS: перенаправление с помощью 'window.location' без сохранения истории в Firefox - PullRequest
1 голос
/ 16 февраля 2011

Я пытаюсь перенаправить без потери истории в Firefox. Я использовал следующее без успеха:

window.location = "http://example.com";
window.location.href = "http://example.com";
window.location.assign("http://example.com");

Также попытался использовать «документ» вместо «окна».

Я перенаправлен, но история не добавляется (или удаляется) из браузера

Есть идеи!?

Примечание: я не вызываю эту функцию напрямую, я вызываю ее после успешного запроса JQuery Ajax к серверу:

$.ajax({
  type: "POST",
  ...
  success: function (data) {},
});

переменные данные содержат функцию перенаправления JS (window.location.href = "http://example.com")

Ответы [ 2 ]

2 голосов
/ 16 февраля 2011

Вы можете проверить эту статью о дизайне URL: http://warpspire.com/posts/url-design/ В частности, раздел под названием «Все должно иметь URL». В основном вы захотите использовать функцию history.pushState, чтобы добавить новый URL в историю браузера. Вы также можете проверить аналогичную публикацию stackoverflow: Обновить URL-адрес при вызове AJAX? или Изменить URL-адрес в браузере, не загружая новую страницу, используя JavaScript

0 голосов
/ 16 февраля 2011

Если вы перенаправите в течение 15 секунд, то Firefox не сохранит предыдущую страницу в истории, потому что в противном случае при нажатии назад будет отображаться предыдущая страница не более 15 секунд, прежде чем она будет перенаправлена ​​снова, что служит только для раздражения пользователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...