blob: 642d0b949f9fd9adb91e179c1a79bb00bec2e521 (
plain)
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
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
|
---
title: Firefox 44 for developers
slug: Mozilla/Firefox/Releases/44
tags:
- Firefox
translation_of: Mozilla/Firefox/Releases/44
---
<p>Firefox 44 は、米国時間 2016 年 1 月 26 日にリリースされました。このページでは、開発者に影響する Firefox 44 の変更点をまとめています。</p>
<h2 id="Changes_for_Web_developers" name="Changes_for_Web_developers">Web 開発者向けの変更点一覧</h2>
<h3 id="Developer_Tools" name="Developer_Tools">開発者ツール</h3>
<p>{{page('/ja/docs/Tools/Release_notes', 'Firefox_44')}}</p>
<h3 id="HTML" name="HTML">HTML</h3>
<ul>
<li><code><a href="/ja/docs/Web/HTTP/Link_prefetching_FAQ"><link rel="prefetch"></a></code> が、{{htmlattrxref("crossorigin", "link")}} 属性に従うようになりました ({{bug(1214819)}})。</li>
</ul>
<h3 id="CSS" name="CSS">CSS</h3>
<ul>
<li><code>position: fixed;</code> は、常に新たな stacking context を生成するようになりました ({{bug(1179288)}})。</li>
<li>{{cssxref('unicode-range')}} のサポートを、デフォルトで有効にしました ({{bug(1119062)}})。</li>
<li>CSS Writing Modes の実験的な実装を更新して、最新の仕様を反映しました:
<ul>
<li>{{cssxref("text-orientation")}} プロパティの値 <code>sideways</code> を実装して、<code>sideways-right</code> をこの値の別名にしました ({{bug(1193488)}})。</li>
<li>{{cssxref("writing-mode")}} プロパティの値 <code>sideways-rl</code> および <code>sideways-lr</code> を実装しました ({{bug(1193488)}} および {{bug(1193519)}})。</li>
</ul>
</li>
<li>非標準のプロパティ {{cssxref("-moz-math-display")}} および {{cssxref("-moz-window-shadow")}} は、Web コンテンツで使用できなくなりました ({{bug(1207002)}}、{{bug(1211040)}}、{{bug(1212607)}})。</li>
<li>{{cssxref("font-style")}} で、<code>oblique</code> と <code>italic</code> の両方を使用できる場合は、両者を区別するようになりました ({{bug(543715)}})。</li>
<li>未サポートであるにもかかわらず {{cssxref("marks")}}、{{cssxref("orphans")}}、{{cssxref("page")}}、{{cssxref("size")}}、{{cssxref("widows")}} の各プロパティがパースされ、{{cssxref("@supports")}} で誤ってサポート済みであると報告していました。この問題を修正してパースしないように、またサポート済みとしないようになりました ({{bug(1215702)}})。</li>
<li>内部で使用する値 <code>-moz-mac-unified-toolbar</code> を、{{cssxref("-moz-appearance")}} プロパティで使用できる値から外しました ({{bug(1206468)}})。</li>
<li>いくつかの <code>-webkit</code> 接頭辞付きプロパティおよび値を、web 互換性のためにサポートしました。設定項目 <code>layout.css.prefixes.webkit</code> で制御しており、既定値は <code>false</code> です ({{bug(837211)}}):
<ul>
<li>{{cssxref("-webkit-animation")}}</li>
<li>{{cssxref("-webkit-animation-delay")}}</li>
<li>{{cssxref("-webkit-animation-direction")}}</li>
<li>{{cssxref("-webkit-animation-duration")}}</li>
<li>{{cssxref("-webkit-animation-fill-mode")}}</li>
<li>{{cssxref("-webkit-animation-iteration-count")}}</li>
<li>{{cssxref("-webkit-animation-name")}}</li>
<li>{{cssxref("-webkit-animation-play-state")}}</li>
<li>{{cssxref("-webkit-animation-timing-function")}}</li>
<li>{{cssxref("-webkit-text-size-adjust")}}</li>
<li>{{cssxref("-webkit-transform")}}</li>
<li>{{cssxref("-webkit-transform-origin")}}</li>
<li>{{cssxref("-webkit-transform-style")}}</li>
<li>{{cssxref("-webkit-transition")}}</li>
<li>{{cssxref("-webkit-transition-delay")}}</li>
<li>{{cssxref("-webkit-transition-duration")}}</li>
<li>{{cssxref("-webkit-transition-property")}}</li>
<li>{{cssxref("-webkit-transition-timing-function")}}</li>
<li>{{cssxref("-webkit-border-radius")}}</li>
<li>{{cssxref("-webkit-border-top-left-radius")}}</li>
<li>{{cssxref("-webkit-border-top-right-radius")}}</li>
<li>{{cssxref("-webkit-border-bottom-left-radius")}}</li>
<li>{{cssxref("-webkit-border-bottom-right-radius")}}</li>
<li>{{cssxref("-webkit-appearance")}}</li>
<li>{{cssxref("-webkit-background-clip")}}</li>
<li>{{cssxref("-webkit-background-origin")}}</li>
<li>{{cssxref("-webkit-background-size")}}</li>
<li>{{cssxref("-webkit-border-image")}}</li>
<li>{{cssxref("-webkit-box-shadow")}}</li>
<li>{{cssxref("-webkit-box-sizing")}}</li>
<li>{{cssxref("-webkit-user-select")}}</li>
</ul>
</li>
</ul>
<h3 id="JavaScript" name="JavaScript">JavaScript</h3>
<h4 id="New_APIs" name="New_APIs">新規 API</h4>
<ul>
<li>{{jsxref("Symbol.toPrimitive")}}、{{jsxref("Symbol.prototype.@@toPrimitive", "Symbol.prototype[@@toPrimitive]")}}、{{jsxref("Date.prototype.@@toPrimitive", "Date.prototype[@@toPrimitive]")}} を実装しました ({{bug(1054756)}})。</li>
</ul>
<h4 id="Changes" name="Changes">変更点</h4>
<ul>
<li>グローバルレベルにおける <code><a href="/ja/docs/Web/JavaScript/Reference/Statements/let">let</a></code> および <code><a href="/ja/docs/Web/JavaScript/Reference/Statements/const">const</a></code> のバインディングを、ES2015 に準拠させました。{{bug(589199)}} およびブログ記事 <a href="https://blog.mozilla.org/addons/2015/10/14/breaking-changes-let-const-firefox-nightly-44/">"Breaking changes in let and const in Firefox Nightly 44"</a> をご覧ください。また、<code>let</code> がデフォルトで Web JavaScript (strict モードおよび 非 strict モード) で使用できるようになり、バージョンのオプトインが不要になりました ({{bug(932517)}})。</li>
<li><a href="/ja/docs/Web/JavaScript/Typed_arrays">型付き配列</a> ({{jsxref("Int8Array", "Int8Array")}} や {{jsxref("ArrayBuffer", "ArrayBuffer")}} など) のコンストラクタを {{jsxref("Operators/new", "new")}} 演算子をつけずに関数として呼び出した場合に、ES6 仕様に従って {{jsxref("TypeError")}} が発生するようになりました ({{bug(980945)}}、{{bug(1214936)}})。</li>
<li>{{jsxref("RegExp")}} のスティッキーフラグが、ES2015 標準の <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/sticky#Anchored_sticky_flag">anchored sticky regular expressions</a> に従うようになりました ({{bug(773687)}})。</li>
<li><a href="/ja/docs/Mozilla/Projects/SpiderMonkey/Introduction_to_the_JavaScript_shell">JavaScript シェル</a> (SpiderMonkey の REPL) のデフォルト JS バージョンが、Web 互換の JS バージョンになりました (JS1.7 以降ではありません) ({{bug(1192329)}})。</li>
</ul>
<h4 id="Removals" name="Removals">廃止</h4>
<ul>
<li>非標準の <a href="/ja/docs/Web/JavaScript/Reference/Statements/let#let_blocks"><code>let</code> ブロック</a>を廃止しました ({{bug(1167029)}})。</li>
<li>非標準かつ非推奨である {{jsxref("Object.noSuchMethod", "Object.prototype.__noSuchMethod__")}} プロパティを削除しました ({{bug(683218)}})。</li>
</ul>
<h3 id="InterfacesAPIsDOM" name="InterfacesAPIsDOM">インターフェイス/API/DOM</h3>
<h4 id="DOM_HTML_DOM" name="DOM_HTML_DOM">DOM & HTML DOM</h4>
<ul>
<li>既存のサイトとの互換性を確保するため、{{domxref("Document.characterSet")}} のエイリアスとして {{domxref("Document.charset")}} を実装しました ({{bug(647621)}})。</li>
<li>Web ページから Sherlock プラグインをインストールすることを可能にする <code><a href="/ja/docs/Adding_search_engines_from_web_pages#Installing_Sherlock_plugins">window.sidebar.addSearchEngine()</a></code> メソッドのサポートを廃止して、Web コンソールに警告を出力するようになりました ({{bug(862148)}})。</li>
<li>望まないポップアップに対抗するため、対話がないページでは {{domxref("Window.onbeforeunload")}} で要求されたプロンプトを表示しないようになりました ({{bug(636905)}})。</li>
<li>非推奨メソッド {{domxref("MessageEvent.initMessageEvent()")}} を、後方互換性のために再実装しました ({{bug(949376)}})。</li>
<li>廃止した <code>DocumentType.internalSubset</code> プロパティを削除しました ({{bug(801545)}})。</li>
<li>既存のサイトとの互換性を確保するため {{domxref("Window.orientation")}} プロパティ、{{domxref("Window.onorientationchange")}} プロパティおよび {{event("orientationchange")}} イベントを実装しました ({{bug(920734)}})。</li>
<li>明示的にフルスクリーンを要求した {{HTMLElement("iframe")}} は、暗黙的にフルスクリーンが解除されないようになりました ({{bug(1187801)}})。</li>
<li>イベント {{event("mouseover")}}、{{event("mouseout")}}、{{event("mouseenter")}}、{{event("mouseleave")}}、{{event("pointermove")}}、{{event("pointerover")}}、{{event("pointerout")}}、{{event("pointerenter")}}、{{event("pointerleave")}} が、無効化したフォーム要素で発生するようになりました ({{bug(218093)}})。</li>
<li>相互運用性を高めるため、{{domxref("Element.webkitMatchesSelector()")}} メソッドを追加しました ({{bug(1216193)}})。</li>
<li>仕様書に合致させるため、{{domxref("Document.createAttribute()")}} は入力内容を小文字に変換するようになりました ({{bug(1176313)}})。</li>
<li>{{domxref("Window.open()")}} の非標準機能である <code>dialog</code> は Web コンテンツで使用できなくなりました。拡張機能や chrome 特権を持つコードでは引き続き使用可能です ({{bug(1095236)}})。</li>
</ul>
<h4 id="Canvas" name="Canvas">Canvas</h4>
<ul>
<li><a href="/ja/docs/Web/API/Web_Workers_API">Web Workers</a> 内で実行するレンダリングコンテキスト (<a href="/ja/docs/Web/API/WebGL_API">WebGL</a> など) を可能にする、{{domxref("OffscreenCanvas")}} API の実験的な実装を追加しました。この実験的な API を使用するには、about:config で <code>gfx.offscreencanvas.enabled</code> を <code>true</code> に設定します ({{bug(709490)}})。この API に含まれるものは以下のとおりです:
<ul>
<li>{{domxref("OffscreenCanvas")}} インターフェイス</li>
<li>{{domxref("HTMLCanvasElement.transferControlToOffscreen()")}}</li>
<li>{{domxref("WebGLRenderingContext.commit()")}}</li>
<li>この API を有効にすると、いくつかの WebGL インターフェイスも worker で使用可能になります。</li>
</ul>
</li>
</ul>
<h4 id="WebGL" name="WebGL">WebGL</h4>
<ul>
<li>Uniform Buffer Objects を実装しました ({{bug(1048747)}})。</li>
</ul>
<h4 id="IndexedDB" name="IndexedDB">IndexedDB</h4>
<ul>
<li>{{domxref("IDBIndex.getAll()")}} および {{domxref("IDBIndex.getAllKeys()")}} を、デフォルトで有効にしました ({{bug(1196841)}})。</li>
</ul>
<h4 id="Service_Workers" name="Service_Workers">Service Worker</h4>
<ul>
<li>{{domxref("ServiceWorkerMessageEvent")}} インターフェイスおよび {{domxref("ExtendableMessageEvent")}} インターフェイスを実装しました ({{bug(1143717)}} および {{bug(1207068)}})。</li>
<li>{{domxref("Headers")}} オブジェクトでペアイテレータをサポートしました。{{domxref("Headers.entries()")}}、{{domxref("Headers.keys()")}}、{{domxref("Headers.values()")}} の各メソッドを使用できます。また {{jsxref("Symbol.iterator")}} は、デフォルトのイテレータを返すようになりました ({{bug(1108181)}})。</li>
<li>{{domxref('XMLHttpRequest')}} API を Service Workers で無効にしました ({{bug(931243)}})。</li>
<li>{{domxref("ExtendableEvent.waitUntil()")}} メソッドにアクセスするため、{{domxref("FetchEvent")}} インターフェイスは {{domxref("ExtendableEvent")}} を拡張するようになりました ({{bug(1214772)}})。</li>
<li>最近の仕様書の変更に従い、{{domxref("FetchEvent.client")}} を削除しました ({{bug(1218135)}})。</li>
<li>最新の仕様書に合致させるため、{{domxref("ServiceWorkerContainer.onreloadpage")}} を削除しました ({{bug(1218139)}})。</li>
<li>仕様書に準拠していないため、イベントハンドラ {{domxref("ServiceWorkerGlobalScope.onbeforeevicted")}} および {{domxref("ServiceWorkerGlobalScope.onevicted")}} を削除しました。将来再導入する可能性がありますが、今回の削除により機能検出が期待どおりに動作するようになります ({{bug(1218142)}})。</li>
<li>{{domxref("FetchEvent.FetchEvent", "FetchEvent()")}} コンストラクタで、オプションのうち <code>isReload</code> メンバが与えられていない場合のデフォルト値が <code>false</code> になりました ({{bug(1216401)}})。</li>
<li>{{domxref("Client.frameType")}} プロパティを正しいインターフェイスに実装しました。以前は {{domxref("WindowClient")}} に実装していました ({{bug(1218146)}})。</li>
<li>ページのオフラインサポートを提供するために <a href="/ja/docs/Web/HTML/Using_the_application_cache">AppCache</a> を使用している場合は、代わりに <a href="/ja/docs/Web/API/Service_Worker_API/Using_Service_Workers">Service workers</a> を使用するようアドバイスする警告メッセージをコンソールに表示するようになりました ({{bug("1204581")}})。</li>
<li>Gecko で、Service workers をデフォルトで有効にしました。</li>
</ul>
<h4 id="WebRTC" name="WebRTC">WebRTC</h4>
<ul>
<li>WebRTC インターフェイスの<em>接頭辞を削除しましたunprefixed</em> ({{bug(1155923)}})。特に、以下のとおり変更します:
<ul>
<li><code>mozRTCPeerConnection</code> が {{domxref("RTCPeerConnection")}} になります。</li>
<li><code>mozRTCIceCandidate</code> が {{domxref("RTCIceCandidate")}}になります。</li>
<li><code>mozRTCSessionDescription</code> が {{domxref("RTCSessionDescription")}} になります。</li>
</ul>
</li>
<li>{{domxref("RTCDataChannel.bufferedAmountLowThreshold")}}、{{domxref("RTCDataChannel.onbufferedamountlow")}} プロパティおよび {{event("bufferedamountlow")}} イベントを実装しました ({{bug(1178091)}})。</li>
<li>{{domxref("RTCPeerConnection.canTrickleIceCandidates")}} 属性を追加して、非標準メソッド {{domxref("RTCPeerConnection.updateIce()")}} を削除しました ({{bug(1209744)}})。</li>
<li>{{domxref("MediaStream")}} インターフェイスで {{domxref("MediaStream.addTrack()")}} および {{domxref("MediaStream.removeTrack()")}} メソッドをサポートしました ({{bug(1103188)}})。</li>
<li>{{domxref("MediaStream.MediaStream", "MediaStream()")}} コンストラクタを実装しました ({{bug(1070216)}})。</li>
<li>{{domxref("RTCOfferOptions")}} の、非標準である制約的なオプションリストのサポートを廃止しました。詳しくは、<a href="https://www.fxsitecompat.com/ja/docs/2015/constraint-like-rtcofferoptions-are-no-longer-supported/">こちらのサイト互換性情報</a>をご覧ください。</li>
</ul>
<h4 id="New_APIs_2" name="New_APIs_2">新規 API</h4>
<ul>
<li>Workers での Canvas API を実験的に実装しました: {{domxref("OfflineCanvas")}} および {{domxref("HTMLCanvasElement.transferControlToOffscreen()")}} を使用できます。設定項目 <code>gfx.offscreencanvas.enabled</code> で制御しており、現在はデフォルトで無効化しています ({{bug(709490)}})。</li>
<li>Web Speech API の一部である Text2Speech API で、OS X のバックエンドに対応しました。ただし、デフォルトで無効化しています ({{bug(1003452)}})。</li>
</ul>
<h4 id="Miscellaneous" name="Miscellaneous">その他</h4>
<ul>
<li>{{domxref("URLSearchParams")}} オブジェクトでペアイテレータをサポートしました。{{domxref("URLSearchParams.entries()")}}、{{domxref("URLSearchParams.keys()")}}、{{domxref("URLSearchParams.values()")}} の各メソッドを使用できます。また {{jsxref("Symbol.iterator")}} は、デフォルトのイテレータを返すようになりました ({{bug(1085284)}})。</li>
<li>{{domxref("FormData")}} オブジェクトでペアイテレータをサポートしました。{{domxref("FormData.entries()")}}、{{domxref("FormData.keys()")}}、{{domxref("FormData.values()")}} の各メソッドを使用できます。また {{jsxref("Symbol.iterator")}} は、デフォルトのイテレータを返すようになりました ({{bug(1127703)}})。</li>
<li>{{domxref("XMLHttpRequest.send()")}} を HTML ドキュメントで使用したとき、<code>application/xml</code> に代わり <code>text/html</code> を使用するようになりました ({{bug(918771)}})。</li>
<li>音声合成 (text-to-speech) を Mac および Linux 向けのデスクトップ版 Firefox に実装しました。ただし、<code>about:config</code> の <code>media.webspeech.synth.enabled</code> フラグで無効化しています ({{bug("1003452")}}、{{bug("1003464")}})。詳しくは <a href="/ja/docs/Web/API/Web_Speech_API">Web Speech API</a> をご覧ください。</li>
<li>{{HTMLElement("frame")}} または {{HTMLElement('object')}} の内部にある要素は、フルスクリーン表示できないようになりました ({{bug(1212299)}})。</li>
<li>WOFF フォントのサニタイズ処理を、少々強化しました。誤りがあるフォントをより多く拒否するようになりましたが、Firefox 46 でやや緩和しました ({{bug(1193050)}} および {{bug (1244693)}})。</li>
</ul>
<h3 id="MathML" name="MathML">MathML</h3>
<p><em>変更なし。</em></p>
<h3 id="SVG" name="SVG">SVG</h3>
<p><em>変更なし。</em></p>
<h3 id="AudioVideo" name="AudioVideo">Audio/Video</h3>
<p><em>変更なし。</em></p>
<h2 id="HTTP" name="HTTP">HTTP</h2>
<ul>
<li><a href="https://en.wikipedia.org/wiki/Brotli">Brotli</a> アルゴリズムをサポートしました。また、<code><a href="/ja/docs/Web/HTTP/Content_negotiation#The_Accept-Encoding_header">Accept-Encoding</a></code> および <code><a href="/ja/docs/Web/HTTP/Headers/Content-Encoding">Content-Encoding</a></code> ヘッダで値 <code>br</code> をサポートしました ({{bug(366559)}} および {{bug(1211916)}})。</li>
<li>改行 (<code>'/n'</code>) を含む HTTP/2 ヘッダについて、HTTP/1 とは異なり仕様書で許可されていないため、誤ってサポートしていた箇所を削除しました ({{bug(1197847)}})。</li>
</ul>
<h2 id="Networking" name="Networking">ネットワーク</h2>
<p><em>変更なし。</em></p>
<h2 id="Security" name="Security">セキュリティ</h2>
<ul>
<li>Beta および Release 版のブラウザでも、RC4 がデフォルトで無効になりました ({{bug(1201025)}})。また、ホワイトリストがデフォルトで空になりました ({{bug(1215796)}})。</li>
</ul>
<h2 id="Changes_for_add-on_and_Mozilla_developers" name="Changes_for_add-on_and_Mozilla_developers">アドオン開発者と Mozilla 開発者向けの変更点</h2>
<h3 id="Interfaces" name="Interfaces">インターフェイス</h3>
<p><em>変更なし。</em></p>
<h3 id="XUL" name="XUL">XUL</h3>
<p><em>変更なし。</em></p>
<h3 id="JavaScript_code_modules" name="JavaScript_code_modules">JavaScript コードモジュール</h3>
<ul>
<li>Sqlite.jsm で <code>LIKE</code> をサポートしました ({{bug(1188760)}})。</li>
<li><a href="/ja/docs/Mozilla/Firefox_for_Android" title="Mozilla/Firefox_for_Android">Android 版 Firefox</a> に <a href="/ja/docs/Mozilla/Add-ons/Firefox_for_Android/API/Snackbars.jsm">Snackbars.jsm</a> モジュールを追加しました ({{bug(1215026)}})。</li>
</ul>
<h3 id="XPCOM" name="XPCOM">XPCOM</h3>
<ul>
<li>{{interface("nsIDOMWindow")}} インターフェイスが空になりました。存在していたアイテムは使用されない、他のインターフェイスに移転、あるいは C++ に限り使用するものになりました。C++ コードから利用できるアイテムは、<code>{{source("dom/base/nsPIDOMWindow.h", "nsPIDOMWindow")}}</code> インターフェイスに存在しています ({{bug(1216401)}})。</li>
</ul>
<h3 id="Other_2" name="Other_2">その他</h3>
<ul>
<li>Firefox 44 での破壊的な変更 (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1202902">bug 1202902</a>) により、<a href="/ja/docs/Mozilla/Add-ons/SDK/Tools/cfx">cfx</a> でパックしたアドオンが動作しなくなります。再びアドオンが互換性を持つようにするために、<a href="/ja/docs/Mozilla/Add-ons/SDK/Tools/jpm">jpm</a> を使用してください。<em>cfx</em> から <em>jpm</em> に移行する手順は<a href="/ja/docs/Mozilla/Add-ons/SDK/Tools/cfx_to_jpm">こちらに記載しています</a>。</li>
</ul>
<h2 id="See_also" name="See_also">関連情報</h2>
<ul>
<li><a href="https://www.mozilla.jp/firefox/44.0/releasenotes/">Firefox 44.0 リリースノート</a></li>
<li><a href="https://www.fxsitecompat.com/ja/versions/44/">Firefox 44 サイト互換性情報</a></li>
<li><a href="https://dev.mozilla.jp/2015/12/firefox-44-addon-compatibility/">Firefox 44 アドオン互換性情報</a></li>
</ul>
<h2 id="Older_versions" name="Older_versions">過去のバージョン</h2>
<p>{{Firefox_for_developers('43')}}</p>
|