мобильный хром срабатывает событие resize при скроллинге

Я'м через мобильный браузер Chrome на галактики S4, Android 4.2.2 и почему-то каждый раз, когда я прокрутки страницы вниз, то срабатывает событие resize проверяется масштабирование изображения с помощью jQuery.слайдшоу cycle2.

Любые идеи, почему это может происходить?

Комментарии к вопросу (1)

Это звучит странно, но я видел это в других браузерах. Вы можете обойти это так.

var width = $(window).width(), height = $(window).height();

затем в обработчик событий resize вы можете сделать.

if($(window).width() != width || $(window).height() != height){
  //Do something
}

Я не'т знать рамки своих функций и все такое, но вы должны уловить суть от этого.

Комментарии (7)
Решение

Просто ради любопытства я пытался воспроизвести его, если я'м правильно это вызвано навигационной панели хром.

Когда вы прокрутите вниз и Chrome скрывает панель навигации браузера он производит изменения размера окна, но это правильно, потому что после этого мы имеем больше размер окна из-за свободного пространства, что в строке браузера навигация и уйти.

Связанная статья: https://developers.google.com/web/updates/2016/12/url-bar-resizing

Привет!

Комментарии (3)

Я Дон'т знаю, что это все-таки интересно, но мое решение : )

в

var document_width, document_height;

$(document).ready(function()
{
    document_width=$(document).width(); document_height=$(document).height();
    // Do something
}

$(window).resize(function()
{
    if(document_width!=$(document).width() || document_height!=$(document).height()) 
    {
        document_width=$(document).width(); document_height=$(document).height();
        // Do something
    }
}   

в

Комментарии (1)

На вопрос уже ответили, но поскольку этот вопрос не поднять вопрос отзывчивые сайты, я хотел бы добавить некоторую информацию о том, что.

Я столкнулся с этой проблемой в Chrome на андроид при разработке веб-сайта реагирует. При изменении размера окна я хочу, чтобы скрыть меню (из-за некоторых конструктивных элементов, нуждающихся в нужное положение), но Chrome для Android поведения, чтобы вызвать событие resize на свиток, что-то сложно..

Переключения, чтобы начать использовать onOrientationChange, так как это управляемое сайте нет никаких изменений, ориентация на настольном ПК, но мне все равно нужен код, чтобы работать на обычном компьютере:с планшетов и смартфонов.

Я мог бы уже начали делать браузер нюхают и такие, но я до сих пор удавалось избежать этого..

Я пытался реализовать решение, предложенное CWitty но так как прокрутка вверх или вниз по сути инициирует высота-изменить, что не работает.

Я в конечном итоге добавив условие, которое скрывает только меню, если ширина меняется, не тогда, когда высота изменилась. Это работает в моем случае, поскольку мне нужно только переписать меню, когда ширина изменяется.

Комментарии (1)

Браузеры в мобильных устройствах, часто скрывают их горизонтальной верхней панели навигации, когда кто-то пролистывает, и снова показывать его при прокрутке вверх. Это поведение влияет на размер клиента, выпустив событие resize. Вам просто нужно контролировать не выполнения кода из-за изменения высоты или, по крайней мере, из-за этого высота изменение.

Комментарии (0)

Это дубликат событий JavaScript изменить размер на свиток мобильный

Для того, чтобы исправить это, используйте и окна onOrientationChange.свойство orientation. См. соответствующий ответ: здесь

Комментарии (3)

Оказывается, есть много вещей, которые могут стрелять изменить размер в различных мобильных браузерах.

Я знаю, что это's не подходит к ссылке на внешний ресурс, но англ. и удобочитаемую таблицу, что я Дон'т хотите дублировать (или поддержания) здесь: http://www.quirksmode.org/dom/events/resize_mobile.html

Просто чтобы дать пример, что становится с нами: по-видимому, во многих браузерах, открывая клавиатуру запускает событие.

Комментарии (0)