Задать вопрос
andreichirkov
@andreichirkov
Frontend разработчикк

Какой лучший способ слежки за resize window (или body) через JS?

Прочитал много разных способов, но так и не понял какой же способ лучший в 2021 году.

Как следить за ресайзом окна через js?
Есть window resize, matchMedia, addeventlistener, ResizeObserver.

Как постоянно следить за размером body или за конкретным блоком? например нужно перестроить типичную галерею картинок на малых экранах
  • Вопрос задан
  • 610 просмотров
Подписаться 2 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 2
Get-Web
@Get-Web Куратор тега JavaScript
Front-End Developer
Если надо следить за window, то resize вполне подходящий вариант, а чтобы слишком часто не выполнять сложные вычисления, отложить выполнение функции через setTimeout примерно так:
Ответ написан
Комментировать
Aetae
@Aetae Куратор тега JavaScript
Тлен
Очевидно: в зависимости от задачи.
resize - realtime пропорциональная зависимость от размеров всего окна.
matchMedia - единоразовые изменения по breakpoint'ам.
ResizeObserver - слежение за конкретным элементом (который может и не менять размеров при изменении окна\media).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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