Почему Mobile Safari не показывает изображение после window.onload? - PullRequest
0 голосов
/ 05 ноября 2018

Я наблюдаю неожиданное поведение при попытке перенаправить пользователей только после того, как изображение завершило загрузку в (последнем) Mobile Safari. В идеале, пользователь должен видеть фирменное изображение, чтобы он знал, что находится в правильном месте, прежде чем будет перенаправлен.

Из того, что я вижу, событие window.onload сработало, но изображение по-прежнему не отображается до того, как пользователь увидит запрос подтверждения iOS, который говорит что-то вроде: «Вас перенаправляют ...» , Это кажется худшим из всех миров: пользователь (по-видимому) должен ждать загрузки страницы / изображения, но они все еще не видят его.

Вот соответствующий JavaScript:

function main() {
  if (shouldRedirect()) {
    window.location = appStoreUrl;
  }
}

window.onload = main;

// I have also tried the following, which displays the same behavior
var src = "IMAGE-URL";
var image = new Image();
image.onload = main;
image.setAttribute('src', src);

Итак, является ли Safari умным и не загружает / не отображает изображение, потому что знает, что пользователю не нужно , чтобы его увидеть? Или это может быть ошибка в Safari?

...