window.location.assign при нажатии не работает в iOS - PullRequest
0 голосов
/ 21 мая 2019

У меня есть функция «по нажатию» window.location.assign, которая отлично работает на моем рабочем столе, но не на iPhone. Каждый раз, когда я нажимаю на кнопку на моем телефоне, я вижу, что URL-адрес меняется, но затем возвращается к старому.

Я пытался с помощью window.location.replace и других опций JS сделать перенаправление, но на моем телефоне всегда была эта странная «ошибка».

    $('#redirect').on('click', function(){
      var url = "https://google.com/";
      window.location.assign(url);
      return false;
    });

Почему это происходит и как это можно решить?

1 Ответ

0 голосов
/ 21 мая 2019

Safari на iOS плохой. Если вы хотите обнаружить сафари и перенаправить с помощью чего-то, что будет работать, попробуйте это:

var url = "https://google.com/";
var uagent = navigator.userAgent.toLowerCase();
if(/safari/.test(uagent) && !/chrome/.test(uagent)) {
    window.location.href = url;
}
...