@gfr3

Как оптимизировать скрипт?

Подскажите есть скрипт
$('[href=#tab]').on('shown.bs.tab', function (e) {
function resize() {
if ( $(window).width() < 992 ) { 
      $(function() {
         $('.item').matchHeight();
      });
}
}
$(window).resize(resize);
resize();
});


Но при выполнении resize браузер заметно подвисает. Можно ли както оптимизировать данный скрипт?
  • Вопрос задан
  • 100 просмотров
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Для начала, нужно вынести обработку ресайза из события табов - вы при каждом переключении ставите ещё один обработчик.

Потом, оборачивать $('.item').matchHeight() в $(function() {}) тоже не нужно. Это onLoad, в него должен быть обёрнут весь этот код.

Это даст вам 80% результата при 1% усилий:
function resize() {
  if ( $(window).width() < 992 ) {
    $('.item').matchHeight();
  }
}

$(window).resize(resize);

resize();


Оставшиеся 20% вы можете получить используя throttle / debounce.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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