Как обеспечить работу кода window.location.href во всех браузерах в javascript?

Пользователь

от amaya_bahringer , в категории: JavaScript , 7 месяцев назад

Как обеспечить работу кода window.location.href во всех браузерах в javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jose , 7 месяцев назад

@amaya_bahringer 

Обычно window.location.href работает во всех современных браузерах, однако, если вы хотите быть увереными, что ваш код будет работать во всех браузерах, можно использовать следующий подход:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
if (typeof window !== 'undefined') {
  const redirectUrl = 'https://example.com';
  if (window.location && window.location.href) {
    window.location.href = redirectUrl;
  } else if (window.location && window.location.replace) {
    window.location.replace(redirectUrl);
  } else {
    window.location = redirectUrl;
  }
}


Этот код проверяет, существует ли объект window, а также проверяет, есть ли свойства location и href в объекте window. Если есть, то перенаправление происходит через window.location.href. Если нет, то используется window.location.replace, а если это также невозможно, то перенаправление происходит через window.location.


Таким образом, вы можете быть уверены, что ваш код будет работать во всех браузерах, которые поддерживают JavaScript. Однако, имейте в виду, что в некоторых случаях, например, при блокировке перенаправлений или в случае использования некоторых расширений браузера, перенаправление может не сработать.