Должен ли я использовать window.navigate или document.location в JavaScript?

Какой предпочтительный метод использовать для изменения местоположения текущей веб-страницы с помощью JavaScript? Я видел как windows.navigate, так и document.location. Есть ли различия в поведении? Существуют ли различия в реализации браузеров?

Ответ 1

window.location.href = 'URL';

- стандартная реализация для изменения текущего местоположения окна.

Ответ 2

document.location - это свойство (устаревшее, но все еще существующее) свойство только для чтения, замененное document.url.

Ответ 3

window.location повлияет на вашу цель. document.location повлияет только на ваш браузер и frame/iframe.

Ответ 4

window.location также влияет на кадр,

лучшая найденная мной форма:

parent.window.location.href

И что еще хуже:

parent.document.URL 

Я сделал массивный тест браузера, а некоторые редкие IE с несколькими плагинами получили undefined со второй формой.

Ответ 5

window.navigate НЕ поддерживается в некоторых браузерах, поэтому этого следует избегать. Любой из других методов, использующих свойство location, является самым надежным и последовательным подходом

Ответ 6

Я бы пошел с window.location = "http://...";. Я уже несколько лет кодирую кросс-браузер JavaScript, и у меня никогда не возникало проблем с использованием этого подхода.

window.navigate и window.location.href кажется немного странным для меня.

Ответ 7

В действительности нет никакой разницы; существует около 5 различных способов этого. Тем не менее, те, что я вижу чаще всего, это document.location и window.location, потому что они поддерживаются всеми основными браузерами. (Я лично никогда не видел window.navigate, который используется в производственном коде, поэтому, возможно, у него нет хорошей поддержки?)

Ответ 8

поддержка document.location также хороша, хотя ее устаревший метод. Я использую этот метод некоторое время без проблем. вы можете обратиться сюда для получения более подробной информации:

https://developer.mozilla.org/en-US/docs/Web/API/document.location

Ответ 9

Вы можете перемещать страницу, используя

window.location.href =Url;