1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
|
---
title: Firefox 62 для разработчиков
slug: Mozilla/Firefox/Releases/62
translation_of: Mozilla/Firefox/Releases/62
---
<div>{{FirefoxSidebar}}</div>
<p class="summary">В этой статье перечислены ключевые изменения, которые касаются разработчиков. Firefox 62 был выпущен 5 сентября 2018 года.</p>
<h2 id="Изменения_для_веб-разработчиков">Изменения для веб-разработчиков</h2>
<h3 id="Инструменты_разработчика">Инструменты разработчика</h3>
<ul>
<li>Включён по умолчанию редактор Shape Path — подробности в статье <a href="/ru/docs/Tools/Page_Inspector/How_to/Edit_CSS_shapes">Edit Shape Paths in CSS</a>.</li>
<li>Появилась возможность вынести просмотр CSS-правил в отдельную от других вкладок панель. См. <a href="/ru/docs/Tools/Page_Inspector/3-pane_mode">Page inspector 3-pane mode</a> для получения подробных сведений.</li>
<li>Инспектор CSS-сеток обзавёлся новыми возможностями и новой документацией — см. <a href="/ru/docs/Tools/Page_Inspector/How_to/Examine_grid_layouts">CSS Grid Inspector: Examine grid layouts</a>.</li>
<li>Инструменты разработчика теперь можно разместить не только снизу и справа, но и слева (а также вынести в отдельное окно) ({{bug(1192642)}}).</li>
<li>На панель <a href="/ru/docs/Tools/Web_Console/Split_console">консоли разделения</a> добавлена кнопка закрытия.</li>
<li>При включённой настройке «Выбрать iframe в качестве текущего целевого документа» соответствующий значок будет появляться на панели инструментов при открытии настроек, даже если текущая страница не содержит фреймов ({{bug(1456069)}}).</li>
<li>Вкладка «<a href="/ru/docs/Tools/Network_Monitor#Куки_(Cookies)">Куки</a>» в <a href="/ru/docs/Tools/Network_Monitor">сетевом мониторе</a> отображает атрибут <code>samesite</code> ({{bug(1452715)}}).</li>
<li><a href="/ru/docs/Tools/Responsive_Design_View">Режим адаптивного дизайна</a> работает и во вкладках, размещённых в контейнерах ({{bug(1306975)}}).</li>
<li>При возникновении и выводе в консоль ошибки {{Glossary("CORS")}} Firefox предоставит ссылку на соответствующую <a href="/ru/docs/Web/HTTP/CORS/Errors">страницу с описанием ошибок CORS</a> ({{bug(1475391)}}).</li>
<li>Появилась возможность создать снимок текущей страницы (без необходимости указывать имя файла) из консоли браузера ({{bug(1464461)}}). Используется команда<br>
<br>
<code>:screenshot <filename.png> --fullpage</code><br>
<br>
где <code><filename.png></code> — желаемое имя файла. Файл будет сохранён в каталог загрузок. Параметр <code>--fullpage</code> не является обязательным и служит для создания снимка всей страницы. В этом случае к имени файла будет добавлено <code>-fullpage</code>. Чтобы увидеть список всех доступных параметров, введите <code>:screenshot --help</code>.</li>
</ul>
<h4 id="Удалено">Удалено</h4>
<ul>
<li>Удалена <a href="/ru/docs/Tools/GCLI">панель разработчика/GCLI</a> (которая открывалась сочетанием клавиш <kbd>Shift</kbd> + <kbd>F2</kbd>) ({{bug(1461970)}}). У интерфейса панели и библиотеки, отвечающей за работу GCLI, уже продолжительное время отсутствует мейнтейнер, некоторые функции не работают (с того времени, как появился многопроцессный режим), а сама GCLI несовместима с <code>unsafeSetInnerHTML</code>. Как следствие, по данным телеметрии панель очень редко используется, к тому же есть альтернативные способы вызова самых популярных команд.</li>
</ul>
<h3 id="HTML">HTML</h3>
<p><em>Без изменений.</em></p>
<h3 id="CSS">CSS</h3>
<ul>
<li>Убран префикс у псевдоэлемента <code>:-moz-selection</code>, отныне он называется {{cssxref("::selection")}} ({{bug(509958)}}).</li>
<li>{{cssxref("<resolution>")}} поддерживает <code>x</code> в качестве единицы измерения ({{bug(1460655)}}).</li>
<li>Включена по умолчанию поддержка {{cssxref("shape-margin")}}, {{cssxref("shape-outside")}} и {{cssxref("shape-image-threshold")}} ({{bug(1457297)}}).</li>
</ul>
<h4 id="Удалено_2">Удалено</h4>
<ul>
<li>Из документов, отличных от XUL, удалены все <a href="/ru/docs/Web/CSS/display#XUL_values">XUL-значения <code>display</code></a> за исключением <code>-moz-box</code> и <code>-moz-inline-box</code> ({{bug(1288572)}}).</li>
</ul>
<h3 id="SVG">SVG</h3>
<p><em>Без изменений.</em></p>
<h3 id="JavaScript">JavaScript</h3>
<ul>
<li>Реализована поддержка конструктора {{jsxref("WebAssembly.Global()")}} и глобальных переменных в WebAssembly ({{bug(1464656)}}).</li>
<li>Включена по умолчанию поддержка методов {{jsxref("Array.prototype.flat()")}} и {{jsxref("Array.prototype.flatMap()")}} ({{bug(1435813)}}).</li>
<li>Реализовано свойство <code><a href="/ru/docs/Web/JavaScript/Reference/Statements/import.meta">import.meta</a></code>, отображающее контекстно-специфичных метаданные для модуля JavaScript ({{bug(1427610)}}).</li>
<li><a href="/ru/docs/Web/JavaScript/Reference/Lexical_grammar#Литерал_String_(Строка)">Строковые литералы</a> могут напрямую содержать символы U+2028 LINE SEPARATOR и U+2029 PARAGRAPH SEPARATOR. Как следствие, синтаксис {{jsxref("JSON")}} отныне является подмножеством литерального синтаксиса JavaScript (см. {{bug(1435828)}} и предложенный TC39 <a href="https://github.com/tc39/proposal-json-superset">json-superset</a>).</li>
<li>Для индексов, выходящих за границы <a href="/ru/docs/Web/JavaScript/Typed_arrays">типизированных массивов</a>, {{jsxref("Reflect.defineProperty()")}} и {{jsxref("Reflect.set()")}} будут возвращать <code>false</code> вместо <code>true</code> ({{bug(1308735)}}).</li>
</ul>
<h4 id="Удалено_3">Удалено</h4>
<ul>
<li>Конструкторы <code>DOMPoint</code> и <code>DOMPointReadOnly</code> больше не поддерживают входной параметр типа <code>DOMPointInit</code>; значения свойств требуется указывать с помощью параметров <code>x</code>, <code>y</code>, <code>z</code> и <code>w</code> ({{bug(1186265)}}).</li>
<li>Метод {{domxref("URL.createObjectURL()")}} больше не поддерживает создание URL-адресов объектов для представления {{domxref("MediaStream")}}. Эта возможность уже не актуальна, поскольку можно напрямую задать {{domxref("HTMLMediaElement.srcObject")}} в <code>MediaStream</code> ({{bug(1454889)}}).</li>
</ul>
<h3 id="API">API</h3>
<h4 id="Новые_API">Новые API</h4>
<ul>
<li>В версии для Android включён по умолчанию {{domxref("Web_Speech_API", "API Speech Synthesis (Text-to-Speech)", "", "1")}} ({{bug(1463496)}}).</li>
</ul>
<h4 id="DOM">DOM</h4>
<ul>
<li>Интерфейс {{domxref("DOMPointReadOnly")}} поддерживает статическую функцию {{domxref("DOMPointReadOnly.fromPoint()")}}, создающую новый точечный объект из совместимого с {{domxref("DOMPointInit")}} словаря, который содержит любой объект {{domxref("DOMPoint")}}. Функция также доступна на {{domxref("DOMPoint")}} ({{bug(1186265)}}).</li>
<li>В целях совместимости реализована поддержка свойства {{domxref("Event.srcElement")}}. Оно является ссылкой на {{domxref("Event.target")}} ({{bug(453968)}}).</li>
<li>{{domxref("Navigator.registerProtocolHandler()")}} может быть вызван лишь в безопасном контексте ({{bug(1460506)}}).</li>
<li>Отключена по умолчанию поддержка метода {{domxref("Navigator.registerContentHandler()")}}. Он будет удалён в будущем, поскольку уже некоторое время является устаревшим ({{bug(1460481)}}).</li>
<li>Реализован конструктор {{domxref("DataTransfer.DataTransfer", "DataTransfer()")}} ({{bug(1351193)}}).</li>
<li>{{domxref("Document.domain")}} больше не может вернуть <code>null</code> ({{bug(819475)}}). Если не удалось идентифицировать домен, <code>domain</code> вернёт пустую строку вместо <code>null</code>.</li>
<li>Реализован метод {{domxref("Console.timeLog()")}}, отображающий текущее значение таймера консоли без остановки самого таймера ({{bug(1458466)}}).</li>
<li>Реализован метод {{domxref("Console.countReset()")}}, сбрасывающий значение счётчика консоли ({{bug(1459279)}}).</li>
</ul>
<h4 id="События_DOM">События DOM</h4>
<p><em>Без изменений.</em></p>
<h4 id="Сервис-воркеры">Сервис-воркеры</h4>
<p><em>Без изменений.</em></p>
<h4 id="Медиа_Web_Audio_и_WebRTC">Медиа, Web Audio и WebRTC</h4>
<ul>
<li>Настройка <code>media.autoplay.enabled</code> распространяется не только на видео-, но и на аудиосодержимое ({{bug(1413098)}}).</li>
<li>Интерфейс {{domxref("ChannelSplitterNode")}} приведён в соответствие спецификации: по умолчанию у него 6 каналов, <code>channelInterpretation</code> имеет значение <code>"discrete"</code>, а <code>channelCountMode</code> — <code>"explicit"</code> ({{bug(1456265)}}).</li>
</ul>
<h4 id="Удалено_4">Удалено</h4>
<ul>
<li>Поддержка событий {{event("userproximity")}}, {{event("deviceproximity")}} (см. {{domxref("UserProximityEvent")}} и {{domxref("DeviceProximityEvent")}}) отключена по умолчанию и управляется настройкой <code>device.sensors.proximity.enabled</code> ({{bug(1462308)}}).</li>
<li>Поддержка события {{event("devicelight")}} (см. также {{domxref("DeviceLightEvent")}}) отключена по умолчанию и управляется настройкой <code>device.sensors.ambientLight.enabled</code> ({{bug(1462308)}}).</li>
<li><a href="/ru/docs/Web/Guide/Events/Mutation_events">События мутации</a> {{event("DOMSubtreeModified")}} и {{event("DOMAttrModified")}} больше не выбрасываются, когда атрибут {{htmlattrxref("style")}} изменяется с помощью CSSOM ({{bug(1460295)}}, см. также <a href="https://www.fxsitecompat.com/en-CA/docs/2018/domattrmodified-and-domsubtreemodified-events-are-no-longer-fired-when-style-attribute-is-changed-via-cssom/">эту статью</a>).</li>
<li>Прекращена поддержка {{domxref("CSSStyleDeclaration.getPropertyCSSValue()")}} ({{bug(1408301)}}).</li>
<li>Прекращена поддержка {{domxref("CSSValue")}}, {{domxref("CSSPrimitiveValue")}} и {{domxref("CSSValueList")}} ({{bug(1459871)}}).</li>
<li>{{domxref("window.getComputedStyle()")}} больше не возвращает <code>null</code>, если вызван на <code>Window</code>, у которого нет представления ({{bug(1467722)}}).</li>
</ul>
<ul>
</ul>
<ul>
</ul>
<h3 id="HTTP">HTTP</h3>
<h4 id="Удалено_5">Удалено</h4>
<ul>
<li>Удалена поддержка устаревшей CSP-директивы {{CSP("referrer")}}. Вместо неё следует использовать заголовок {{HTTPHeader("Referrer-Policy")}} ({{bug(1302449)}}).</li>
</ul>
<h3 id="Безопасность">Безопасность</h3>
<p><em>Без изменений.</em></p>
<h3 id="Плагины">Плагины</h3>
<p><em>Без изменений.</em></p>
<h3 id="WebDriver_(Marionette)">WebDriver (Marionette)</h3>
<h4 id="Новые_возможности">Новые возможности</h4>
<ul>
<li>Команда <code>WebDriver:ElementSendKeys</code> приносит в WebDriver возможность загружать файлы ({{bug(1448792)}}).</li>
<li>Запросы к пользователю, вызванные событиями <code>beforeunload</code>, автоматически отклоняются для команд <code>WebDriver:Get</code>, <code>WebDriver:Back</code>, <code>WebDriver:Forward</code>, <code>WebDriver:Refresh</code> и <code>WebDriver:Close</code> ({{bug(1434872)}}).</li>
<li><code>WebDriver:PerformActions</code> при нажатии <kbd>Ctrl</kbd> + <code>Click</code> синтезирует событие {{event("contextmenu")}} ({{bug(1421323)}}).</li>
</ul>
<h4 id="Изменения_API">Изменения API</h4>
<ul>
<li>Удалены устаревшие конечные точки, включая <code>getWindowPosition</code>, <code>setWindowPosition</code>, <code>getWindowSize и</code> <code>setWindowSize</code> ({{bug(1348145)}}).</li>
<li>Команды WebDriver, возвращающие успех с данными <code>null</code>, отныне возвращают пустой словарь ({{bug(1461463)}}).</li>
</ul>
<h4 id="Исправленные_ошибки">Исправленные ошибки</h4>
<ul>
<li><code>WebDriver:ExecuteScript</code> вызывал ошибку циклической ссылки для коллекций <a href="/ru/docs/Web/WebDriver/WebElement">WebElement</a> ({{bug(1447977)}}).</li>
<li>
<p>Отправка примитива действия <code>pointerMove</code> или <code>pause</code> могла привести к зависанию, таким образом, команда никогда не отправляла ответ ({{bug(1467743)}}, {{bug(1447449)}}).</p>
</li>
</ul>
<h3 id="Прочее">Прочее</h3>
<p><em>Без изменений.</em></p>
<h2 id="Изменения_для_разработчиков_дополнений">Изменения для разработчиков дополнений</h2>
<h3 id="Изменения_API_2">Изменения API</h3>
<ul>
<li>Добавлен API {{WebExtAPIRef("webRequest.getSecurityInfo()")}}, позволяющий получить подробные сведения о TLS-соединениях ({{bug(1322748)}}).</li>
<li>Добавлен {{WebExtAPIRef("browserSettings.newTabPosition")}}, позволяющий настроить положение новой вкладки ({{bug(1344749)}}).</li>
<li><code>windowTypes</code> объявлен устаревшим в {{WebExtAPIRef("windows.get()")}}, {{WebExtAPIRef("windows.getCurrent()")}} и {{WebExtAPIRef("windows.getLastFocused()")}} ({{bug(1419132)}}).</li>
<li>Появилась возможность изменять каждое окно браузера в отдельности ({{bug(1419893)}}).</li>
</ul>
<h3 id="Изменения_манифеста">Изменения манифеста</h3>
<ul>
<li>Новое свойство <code>open_at_install</code> ключа <code><a href="/ru/docs/Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action">sidebar_action</a></code> манифеста позволяет дополнениям при установке автоматически открывать или не открывать боковые панели ({{bug(1460910)}}).</li>
<li>Изменено свойство <code>browser_style</code> различных ключей манифеста:
<ul>
<li>У <code><a href="/ru/docs/Mozilla/Add-ons/WebExtensions/manifest.json/page_action">page_action</a></code> и <code><a href="/ru/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_action">browser_action</a></code> оно по умолчанию стало <code>false</code>.</li>
<li>У <code><a href="/ru/docs/Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action">sidebar_action</a></code> и <code><a href="/ru/docs/Mozilla/Add-ons/WebExtensions/manifest.json/options_ui">options_ui</a></code> оно по умолчанию стало <code>true</code>.</li>
</ul>
</li>
</ul>
<h3 id="Изменения_темы">Изменения темы</h3>
<ul>
<li>Новое свойство <code>tab_background_separator</code> ключа <code><a href="/ru/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme">theme</a></code> манифеста позволяет дополнениям изменять цвет разделителя вкладок ({{bug(1459455)}}).</li>
</ul>
<h3 id="Удалено_6">Удалено</h3>
<ul>
<li>Прекращена поддержка установки распакованных дополнений ({{bug(1385057)}}).</li>
<li>Убран показ предупреждения о <code>browser_style</code> при временной загрузке дополнения для тестирования ({{bug(1404724)}}).</li>
</ul>
<h2 id="Смотрите_также">Смотрите также</h2>
<ul>
<li><a href="https://www.fxsitecompat.com/en-US/versions/62">Совместимость сайтов с Firefox 62</a></li>
</ul>
<h2 id="Предыдущие_версии">Предыдущие версии</h2>
<p>{{Firefox_for_developers(61)}}</p>
|