Akdmeh
@Akdmeh
PHP, Yii2, Music

Как дождаться загрузки картинки при переходе?

Добрый день!
Возникла необходимость узнать, перешел ли пользователь куда-то со страницы по ссылках или просто ушел сразу после перехода.
Решил сделать это так:
<script type="text/javascript">
function getPicture(){
    var image=new Image();
    image.src='some.site.ru/someimage.jpg';
    return true
}
document.onclick=getPicture
</script>

То есть, при выгрузке страницы мы скачаем картинку-счетчик, которая передаст необходимую информацию.
Но возникла проблема - как заставить дождаться браузер загрузить картинку или хотя бы дать возможность браузеру загрузится ей в фоновом режиме?
Сейчас если перейти и не вставить ожидания - браузер перейдет и отменит загрузку картинки. Может, существует лучшее решение данной проблемы?

Upd.: Да, ответ будет именно 1x1 пиксель или вообще просто заголовки, здесь важен факт сообщения перехода по ссылке. Я уже тестировал метод window.onUnload, но я не понял, как отличить собственно закрытие окна браузера от ПЕРЕХОДА по ссылке. Возможно, вы подскажете, как это сделать?
  • Вопрос задан
  • 222 просмотра
Пригласить эксперта
Ответы на вопрос 1
@oPOCCOMAXAo
Используйте обработчик события beforeunload. И в нём можно использовать синхронный запрос на адрес этой картинки (или любой другой ресурс) и браузер подвиснет, ожидая ответ сервера. В таком случае картинка загрузится и страница закроется. Но не рекомендую использовать такой метод, если картинка не 1х1 пиксель, это сильно будет раздражать
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы