Firefox 43
- Опубликовано:
Предновогодний выпуск браузера Firefox может похвастаться публично доступной официальной 64-битной версией и другими новшествами.
CSS, HTML
- CSS-свойство
hyphens
теперь доступно без префикса-moz-
. Свойство позволяет управлять расстановкой переносов в тексте и изначально было реализовано в Firefox 6 (полноценно — с поддержкой не только англоязычных текстов — в Firefox 8) более 4-х лет назад. - Поддержка CSS-свойства
transform-origin
в SVG-документах, экспериментально реализованная в Firefox 41 и скрытая заabout:config
-параметромsvg.transform-origin.enabled
, включена по умолчанию. Свойствоtransform-box
, тоже экспериментально реализованное в Firefox 41, по-прежнему скрыто, но вместоabout:config
-параметраsvg.transform-origin.enabled
за это теперь отвечаетsvg.transform-box.enabled
. - Поддержка включения значения CSS-свойства
font-stretch
в значение стенографического свойстваfont
. - CSS-псевдокласс
:-moz-full-screen
(нестандартная версия пока неподдерживаемого:fullscreen
) теперь соответствует не только элементу верхнего уровня, но и всем вложенным — аналогично реализации IE11 и Edge. - Поддержка проверки целостности (Subresource Integrity) ресурсов (например, внешних JS-сценариев), подключённых к странице с помощью HTML-элементов
SCRIPT
иLINK
, путём сравнения реального хэша ресурса с указанным в атрибутеintegrity
соответствующего элемента.
JavaScript
- Значение мета-элемента
viewport
теперь можно динамически изменять с помощью JavaScript. Ранее в Firefox приходилось генерировать и добавлять в документ новый мета-элемент с нужным значением. - Поддержка ES2016-метода
includes()
массивов (Array
иTypedArray
), экспериментально реализованная в Firefox 40, включена по умолчанию. Изначально метод называлсяcontains()
, но был вынужденно переименован из-за несовместимости с версией этого метода, используемой в библиотеке MooTools версий ниже 1.2.6. Хорошая иллюстрация того, почему изменение непосредственно стандартных объектов (вместо создания объектов-обёрток, безопасных для будущих версий стандартов и браузеров) является плохой практикой. - Теперь возможна установка значения заголовка
User-Agent
для Ajax-запросов, отправляемых с помощьюXMLHttpRequest.setRequestHeader()
и его fetch-версии. - Поддержка стандартной (без префикса) версии программного интерфейса (API) Screen Orientation. Поддержка нестандартных свойств
mozOrientation
иonmozorientationchange
и методовmozLockOrientation()
иmozUnlockOrientation()
в дальнейшем будет удалена. - Изменения реализации массива
arguments
аргументов функций:- В соответствии с текущей спецификацией ES2015, у функций, определённых с использованием стрелочного синтаксиса (arrow functions), теперь нет собственного массива
arguments
— вместо этого наследуется одноимённый объект родительской полноценной функции. Для получения функциональности, подобной массивуarguments
, применительно к стрелочным функциям можно использовать передачу списка аргументов с помощью синтаксиса остальных параметров (rest parameters). - Поддержка использования массива
arguments
внутри функции, при указании аргументов которой использован синтаксис остальных параметров. - Автоматического изменение значения аргумента функции при изменении соответствующего элемента массива
arguments
(mapped arguments object) теперь возможно только в функциях, не содержащих остальных параметров, значений параметров по умолчанию и destructured-параметров.
- В соответствии с текущей спецификацией ES2015, у функций, определённых с использованием стрелочного синтаксиса (arrow functions), теперь нет собственного массива
Инструменты разработки
- В консоли теперь выводится цепочка вызовов (трассировка стека, stack trace), приведшая к исключению JavaScript.
- Консоль теперь поддерживает вывод серверных отладочных сообщений, отправленных с использованием протокола Chrome Logger, подразумевающего передачу данных в заголовке ответа сервера
X-ChromeLogger-Data
. По умолчанию вывод сообщений отключён, включить можно путём активации фильтра «Сервер». - Функция «Скриншот узла» в инструменте разработки «Инспектор», изначально реализованная в Firefox 41, теперь учитывает плотность точек (DPI) и, соответственно, правильно работает, например, на 4K-мониторах.
Прочее
- Публично доступна официальная 64-битная сборка Firefox. Реально она существовала уже начиная с Firefox 42, но лишь на FTP-сервере Mozilla, а теперь ссылка помещена на официальную веб-страницу скачивания браузера, благодаря чему доступна более широкому кругу пользователей.
См. также примечания к выпуску и информацию для разработчиков.