Хром 124

Если не указано иное, следующие изменения относятся к стабильной версии Chrome 124 для Android, ChromeOS, Linux, macOS и Windows. Узнайте больше о функциях, перечисленных здесь, по предоставленным ссылкам или из списка на ChromeStatus.com . Версия Chrome 124 стабильна по состоянию на 16 апреля 2024 г. Вы можете загрузить последнюю версию на Google.com для настольных компьютеров или в Google Play Store для Android.

Хотите только самое интересное? Ознакомьтесь с Новостями в Chrome 124 .

Изменения браузера и инструменты разработчика

Универсальная установка

Сделайте любую страницу доступной для установки, даже если она не соответствует текущим критериям установки PWA.

Контейнеры прокрутки, фокусируемые на клавиатуре

Улучшает доступность, делая контейнеры прокрутки фокусируемыми с помощью навигации с последовательным фокусом. До этого изменения клавиша табуляции не фокусировала скроллеры, если для tabIndex явно не установлено значение 0 или более.

Сделав скроллеры фокусируемыми по умолчанию, пользователи, которые не могут (или не хотят) использовать мышь, смогут фокусировать обрезанный контент с помощью табуляции клавиатуры и клавиш со стрелками. Это поведение включено, только если скроллер не содержит дочерних элементов, доступных для фокусировки с помощью клавиатуры.

Эта функция будет постепенно внедряться, начиная с Chrome 124, и станет доступна всем пользователям в Chrome 125.

Скроллеры с фокусировкой на клавиатуре | Ошибка отслеживания № 40113891 | Запись ChromeStatus.com | Спецификация

Запрос разрешений для Web MIDI API

Эта функция обеспечивает доступ к Web MIDI API с помощью запроса разрешений. Раньше для использования сообщений SysEx с Web MIDI API требовалось явное разрешение пользователя. Начиная с Chrome 125, для любого доступа к Web MIDI API требуется разрешение пользователя.

Эта функция будет постепенно внедряться, начиная с Chrome 124, и станет доступна всем пользователям в Chrome 125.

Ошибка отслеживания № 40063295 | Запись ChromeStatus.com | Спецификация

HTML и ДОМ

writingsuggestions

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

Новый атрибут writingsuggestions имеет значения true или false , что позволяет разработчикам включать или отключать предложения по написанию, предоставляемые браузером. Состояние атрибута элемента также может быть унаследовано от элементов-предков, что позволяет разработчикам контролировать эту возможность в масштабе каждого элемента, документа или поддокумента.

Запись ChromeStatus.com | Спецификация

Загрузка

Подсказка клиента Sec-CH-UA-Form-Factors

Эта подсказка предоставляет серверу информацию о форм-факторах пользовательского агента. Он возвращает одно или несколько из следующих значений форм-фактора:

  • Рабочий стол : пользовательский агент, работающий на персональном компьютере.
  • Автомобильная промышленность : пользовательский агент, встроенный в транспортное средство, где пользователь может нести ответственность за управление транспортным средством и не иметь возможности следить за мелкими деталями.
  • Мобильное устройство : небольшое сенсорное устройство, которое обычно носит при себе пользователь.
  • Планшет : сенсорное устройство большего размера, чем «мобильное», которое обычно не носит с собой пользователь.
  • XR : иммерсивные устройства, которые дополняют или заменяют среду вокруг пользователя.
  • EInk : устройство, характеризующееся медленным обновлением экрана и ограниченным или отсутствующим цветовым разрешением.
  • Часы : мобильное устройство с крошечным экраном (обычно менее двух дюймов), расположенное таким образом, чтобы пользователь мог быстро на него взглянуть.

Запись ChromeStatus.com | Спецификация

Разрешение на доступ к частной сети для облегчения смешанного контента

Чтобы установить соединения с устройствами в локальной сети, которые не имеют глобальных уникальных имен и, следовательно, не могут получить сертификаты TLS, эта функция представляет новую опцию fetch() , чтобы объявить о намерении разработчиков связаться с таким устройством. Это включает в себя новую управляемую политикой функцию для ограничения доступа каждого сайта к этой возможности, а также новые заголовки для предполетного ответа сервера для предоставления дополнительных метаданных.

Запись ChromeStatus.com | Спецификация

заголовок priority HTTP-запроса

Это добавляет заголовок priority запроса для всех HTTP-запросов с информацией о приоритете запроса на момент его отправки.

RFC 9218 (Расширяемая схема приоритезации для HTTP) определяет priority заголовок HTTP-запроса, который используется для сигнализации приоритета запроса источникам (и посредникам). Он также определяет процессы согласования и кадры уровня протокола для HTTP/2 и HTTP/3 для передачи одинаковой информации о приоритете.

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

Заголовок может работать от начала до конца с исходными серверами (и предоставлять источнику механизм переопределения приоритета, если он распознан посредниками), в то время как кадры ограничены работой на канальном уровне.

Эта функция предназначена специально для поддержки схемы определения приоритетов на основе заголовков.

Ошибка отслеживания № 40252001 | Запись ChromeStatus.com | Спецификация

Блокировка рендеринга документа

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

Это особенно важно для переходов просмотра, где проанализированное состояние DOM в первом кадре может радикально изменить созданный переход.

Обратите внимание, что эта функция реализует синтаксис <link rel=expect href="#id"> который позволяет элементу ссылки ссылаться на другой ожидаемый элемент на странице. Затем рендеринг блокируется до тех пор, пока ожидаемый элемент не будет полностью проанализирован. Это заменяет предыдущую реализацию атрибута HTML, который позволяет блокировать отображение всего документа.

Запись ChromeStatus.com | Спецификация

Инкапсуляция ключей X25519Kyber768 для TLS

Защищает текущий TLS-трафик Chrome от будущего квантового криптоанализа, используя квантово-устойчивый алгоритм согласования ключей Kyber768.

Это гибридное соглашение о ключах X25519 и Kyber768, основанное на стандарте IETF. Эта спецификация и запуск выходят за рамки W3C. Это соглашение о ключах будет реализовано в виде шифра TLS и должно быть прозрачным для пользователей.

Защита трафика Chrome с помощью Hybrid Kyber KEM | Ошибка отслеживания № 40910498 | Запись ChromeStatus.com | Спецификация

СМИ

Атрибут jitterBufferTarget

Атрибут jitterBufferTarget позволяет приложениям указывать целевую продолжительность времени в миллисекундах для хранения буфера дрожания RTCRtpReceiver . Это влияет на объем буферизации, выполняемой пользовательским агентом, что, в свою очередь, влияет на повторную передачу и восстановление потерянных пакетов. Изменение целевого значения позволяет приложениям контролировать компромисс между задержкой воспроизведения и риском исчерпания аудио- или видеокадров из-за дрожания сети.

Ошибка отслеживания № 324276557 | Запись ChromeStatus.com | Спецификация

Веб-API

API WebSocketStream.

API WebSocket предоставляет интерфейс JavaScript для протокола WebSocket RFC6455. Несмотря на то, что он хорошо послужил, он неудобен с точки зрения эргономики и лишен такой важной функции, как противодавление. Цель API WebSocketStream — устранить эти недостатки путем интеграции потоков WHATWG с API WebSocket.

WebSocketStream: интеграция потоков с помощью WebSocket API | Ошибка отслеживания № 41470216 | Запись ChromeStatus.com | Спецификация

setHTMLUnsafe и parseHTMLUnsafe

Методы setHTMLUnsafe и parseHTMLUnsafe позволяют использовать декларативную теневую модель DOM из JavaScript. Эти методы также предлагают более простой способ императивного анализа HTML в DOM по сравнению с innerHTML или DOMParser .

Запись ChromeStatus.com | Спецификация

Streams API: асинхронная итерация ReadableStream

API-интерфейсы потоков предоставляют повсеместные, совместимые примитивы для создания, составления и потребления потоков данных. Это изменение добавляет поддержку асинхронного итерируемого протокола в ReadableStream API , позволяя использовать читаемые потоки в качестве источника циклов for await...of .

Ошибка отслеживания № 40612900 | Запись ChromeStatus.com | Спецификация

событие pageswap

Событие pageswap вызывается для объекта окна документа, когда навигация заменяет этот документ новым документом. Событие предоставляет информацию об активации навигации ( type , NavigationHistoryEntry для нового документа).

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

Ошибка отслеживания № 41495176 | Запись ChromeStatus.com | Спецификация

Дополнения к API отчетов по атрибуции

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

Документ «картинка в картинке»: добавьте возможность скрыть кнопку возврата на вкладку.

Это добавляет новый параметр ( disallowReturnToOpener ) в API «картинка в картинке документа» , который, если для него установлено значение true, намекает браузеру, что он не должен отображать кнопку в окне «картинка в картинке», которая позволяет пользователю перейти вернуться на вкладку открытия.

Хотя наличие кнопки для возврата на вкладку открытия всегда имеет смысл в случае видео «картинка в картинке» (видеопоток можно вернуть в элемент видео на вкладке открытия), это не всегда так для документа «картинка в картинке». -картинные переживания. Это дает разработчикам больше контроля над взаимодействием с пользователем, когда они определяют, что такая кнопка не имеет смысла для их варианта использования.

Документация для документа «картинка в картинке» | Запись ChromeStatus.com | Спецификация

Рендеринг и графика

context-fill и context-stroke SVG

Реализует существующую функцию SVG, которая позволяет использовать ключевые слова context-fill и context-stroke при указании свойств заливки и обводки. Это влияет только на поддеревья SVG, экземпляры которых создаются с помощью элемента <use> , и на элементы <marker> , экземпляры которых создаются с использованием свойства marker в элементе <path> . В таких случаях context-fill и context-stroke разрешаются в значение свойств fill и stroke в <use> или <path> .

Запись ChromeStatus.com | Спецификация

WebGPU: поддержка ServiceWorker и SharedWorker.

В WebGPU добавлена ​​поддержка ServiceWorker и SharedWorker в соответствии с существующими возможностями WebGL.

Service Workers обеспечивают автономные возможности и фоновую обработку для WebGPU. Это означает, что веб-приложения с интенсивным использованием графики или расширения Chrome могут кэшировать ресурсы и выполнять вычисления, даже когда пользователь не взаимодействует активно со страницей.

Общие работники позволяют нескольким вкладкам или контекстам расширений координировать и совместно использовать ресурсы WebGPU. Это приводит к более плавной работе и более эффективному использованию графического оборудования пользователя.

Ошибка отслеживания № 41494731 | Запись ChromeStatus.com | Спецификация

Испытания происхождения продолжаются

В Chrome 124 вы можете принять участие в следующих новых пробных версиях Origin .

Пробная версия устаревания для событий мутации

События мутации, включая DOMSubtreeModified , DOMNodeInserted , DOMNodeRemoved , DOMNodeRemovedFromDocument , DOMNodeInsertedIntoDocument и DOMCharacterDataModified , могут снизить производительность страницы, а также значительно усложнить добавление новых функций в Интернет. Эти API были исключены из спецификации в 2011 году и были заменены (в 2012 году) API Mutation Observer с гораздо лучшим поведением.

Поддержка событий мутации будет отключена по умолчанию, начиная с Chrome 127 , примерно 30 июля 2024 года. Код следует перенести в API Mutation Observer API до этой даты, чтобы избежать поломки сайта. Если требуется больше времени, зарегистрируйтесь для участия в пробной версии прекращения поддержки событий Mutation , чтобы повторно включить эту функцию на ограниченное время на определенном сайте. Его можно будет использовать в Chrome 134, заканчивающемся 25 марта 2025 г.

В качестве альтернативы для той же цели можно использовать корпоративную политику MutationEventsEnabled , в том числе через Chrome 134.

Пробная версия происхождения | Ошибка отслеживания № 40268638 | Запись ChromeStatus.com | Спецификация

Устаревания и удаления

В этой версии Chrome представлены следующие устаревшие и удаленные функции. Посетите ChromeStatus.com, чтобы просмотреть списки устаревших и удаленных функций.

В Chrome 124 нет устаревших версий или удалений.

дальнейшее чтение

Ищете больше? Ознакомьтесь с этими дополнительными ресурсами.