Задать вопрос

Почему срабатывает window.onresize при scroll в мобильном браузере?

Если создать длинную страницу и попытаться прокрутить в мобильном браузере, то после остановки прокрутки срабатывает событие window.onresize. Пожалуйста объясните почему?
  • Вопрос задан
  • 3106 просмотров
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
@noRoman Автор вопроса
Я так понимаю никто не может ответить на этот вопрос.
Нашел простое решение как этого избежать:
var width = $(window).width();
$(window).resize(function(){
  if($(window).width() != width){
    //DO RESIZE
    width = $(window).width();
  }
});

Но все же интересно - это баг или фича?

PS вот и ответ: yetti.co.uk/blog/articles/resize-event-when-on-scr...
Если кратко, то браузер решает показывать ему адресную строку или скрыть из-за этого и отрабатывает onresize.

Второе решение.
Размещаем iframe на странице width:100%, height:0 и вешаем onresize на него. В данном случае onresize отработает только в случае изменения ширины iframe.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы