


27 октября Mozilla выпустила Firefox 159. Для веб-разработчиков заметны два изменения: анимации, связанные с прокруткой, теперь включены по умолчанию, а пользовательские HTML-элементы могут использовать отдельные реестры. На Mentoring.digital разбираем, какие проверки стоит добавить при обновлении браузера в рабочем окружении.
Анимация теперь может зависеть от положения прокрутки контейнера или появления элемента в видимой области. Поддерживаются свойства animation-timeline, scroll-timeline, view-timeline и animation-range, а также интерфейсы ScrollTimeline и ViewTimeline. Это позволяет описывать такие эффекты средствами веб-платформы.
Для проекта важна проверка реального сценария: какой контейнер прокручивается, где начинается эффект и что происходит при быстром переходе к концу страницы. Если интерфейс нужен пользователям других браузеров, отдельно проверьте поддержку этих возможностей и поведение без анимации. Сам релиз Firefox не подтверждает совместимость всей аудитории сайта.
Scoped custom element registries позволяют изолировать определения пользовательских элементов. Реестр, созданный через CustomElementRegistry(), отделён от глобального window.customElements. Это полезно, когда на странице встречаются компоненты с одинаковыми именами тегов.
Изменился и Sanitizer API: очистка HTML выполняется во время разбора разметки. Конструкторы удаляемых пользовательских элементов больше не запускаются. MDN также обращает внимание на объединение соседнего текста в один текстовый узел. Если тесты проверяют структуру DOM по узлам, такие ожидания стоит пересмотреть.
В веб-консоли теперь можно повторно объявлять let, const и class. Это облегчает повторный запуск отредактированного фрагмента. В автоматизации удалён аргумент --remote-allow-system-access: при необходимости системного доступа вместо него используется переменная окружения MOZ_REMOTE_ALLOW_SYSTEM_ACCESS со значением 1.
В проверочный набор полезно включить прокрутку, загрузку файлов, компоненты с совпадающими именами и запуск браузера из тестового окружения. Mozilla также исправила переход с отклонённого HTTP/3-запроса на HTTP/2. Составить проверки совместимости и разобрать работу DOM можно с наставником по фронтенду.