1PeGaS
@1PeGaS

Почему очень долго реагирует на изменения ширины браузера?

При изменении вырины браузера body должен выезжать(left: -181px) и становится на место (left: 0). Всё в принципе работает вот рабочий кусок от кода:

$(window).resize(function(){
	if ($(document).width() >= 751){
	$('body').animate({
      left: '0'
    });
}
if($('.menn').css('right') == '0px' &&  $(document).width() < 751){
	$('body').animate({
      left: '-181'
    });
};

});


Но очень долго реагирует. Например при сужении экрана программа "думает" очень долго и только потом применяется анимация к body left: '-181'
  • Вопрос задан
  • 151 просмотр
Решения вопроса 1
Stalker_RED
@Stalker_RED
Если ресайзите окно мышкой, то возможно событие ресайза вызывается много-много раз пока вы "тянете" за границу окна. И на каждом событии ресайза, стартует анимация, и это вызывает тормоза. Это можно проверить в профайлере в консоли браузера, или вписать console.log('resize start'), в обработчике wondow.resize.

Лечится как-то так: https://www.google.com/search?q=jquery+resize+throttle
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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