В Javascript, как мне "очистить" назад (история -1)? - программирование
Подтвердить что ты не робот

В Javascript, как мне "очистить" назад (история -1)?

Когда пользователь загружает страницу, я сразу же перенаправляю окно в другое место.

Проблема в том, что когда пользователь нажимает на нее, она вернется к странице, которая перенаправляет.

Можно ли "отменить" историю предыдущей страницы? Итак, когда пользователь щелкает назад, вместо этого он возвращает две страницы?

4b9b3361

Ответ 1

Вместо того, чтобы использовать window.location = url; для перенаправления,

попробовать:

window.location.replace(url);

после использования replace() текущая страница не будет сохранена в сеансе история, то есть пользователь не сможет использовать кнопку "Назад", чтобы перейдите к нему.

Ответ 2

Вы можете использовать location.replace, чтобы заменить текущую запись местоположения (страницу перенаправления) на новую (цель). Это требует, чтобы вы выполняли перенаправление через JavaScript, а не с метатегами или 302. Например:

// In the redirecting page
location.replace("path/to/target/page");

Живой пример | Источник примера в реальном времени

Ответ 3

Для тех, кто подходит к этой странице и ищет способ AngularJS для этого (а не javascript), используйте метод replace() службы определения местоположения $):

Используйте $location.url('/newpath'); или $location.path('/newpath');, как обычно, для перенаправления в angular. А затем просто добавьте $location.replace(); сразу после него. Или вы можете связать команды следующим образом:

$location.url('/newpath').replace();