aboutsummaryrefslogtreecommitdiff
path: root/files/zh-tw/mozilla/firefox/releases/8/index.html
blob: 3d8da3f09147858c56edbaa297319ca33677115e (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
---
title: Firefox 8 技術文件
slug: Mozilla/Firefox/Releases/8
translation_of: Mozilla/Firefox/Releases/8
---
<div><section id="Quick_links">
  <ol>
    <li class="toggle">
        <details>
            <summary>Firefox developer release notes</summary>
            <ol>
              <li><a href="/zh-TW/docs/Mozilla/Firefox/Releases">Firefox developer release notes</a></li>
            </ol>
        </details>
    </li>
    <li class="toggle">
        <details>
            <summary>擴充套件</summary>
            <ol>
              <li><a href="/zh-TW/Add-ons/WebExtensions">瀏覽器擴充功能</a></li>
              <li><a href="/zh-TW/Add-ons/Themes">主題</a></li>
            </ol>
        </details>
    </li>
    <li class="toggle">
        <details>
            <summary>Firefox internals</summary>
            <ol>
              <li><a href="/zh-TW/docs/Mozilla/">Mozilla project</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Gecko">Gecko</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Firefox/Headless_mode">Headless mode</a></li>
              <li><a href="/zh-TW/docs/Mozilla/JavaScript_code_modules">JavaScript 程式碼模組</a></li>
              <li><a href="/zh-TW/docs/Mozilla/js-ctypes">JS-ctypes</a></li>
              <li><a href="/zh-TW/docs/Mozilla/MathML_Project">MathML 專案</a></li>
              <li><a href="/zh-TW/docs/Mozilla/MFBT">MFBT</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Projects">Mozilla 專案</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Preferences">Preference system</a></li>
              <li><a href="/zh-TW/docs/Mozilla/WebIDL_bindings">WebIDL bindings</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Tech/XPCOM">XPCOM</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Tech/XUL">XUL</a></li>
            </ol>
        </details>
    </li>
    <li class="toggle">
        <details>
            <summary>Building and contributing</summary>
            <ol>
              <li><a href="/zh-TW/docs/Mozilla/Developer_guide/Build_Instructions">建置教學</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Developer_guide/Build_Instructions/Configuring_Build_Options">Configuring build options</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Developer_guide/Build_Instructions/How_Mozilla_s_build_system_works">How the build system works</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Developer_guide/Source_Code/Mercurial">Mozilla 原始碼</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Localization">在地化</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Mercurial">Mercurial</a></li>
              <li><a href="/zh-TW/docs/Mozilla/QA">Quality assurance</a></li>
              <li><a href="/zh-TW/docs/Mozilla/Using_Mozilla_code_in_other_projects">在我們的專案中使用 Mozilla 程式碼</a></li>
            </ol>
        </details>
    </li>
  </ol>
</section></div><p>Firefox 8 was released on November 8, 2011. This article provides information both for <a href="/en/Firefox_8_for_developers#Changes_for_web_developers" title="en/Firefox_8_for_developers#Changes_for_web_developers">web developers</a> and for add-on and <a href="/en/Firefox_8_for_developers#Changes_for_Mozilla_and_add-on_developers" title="en/Firefox_8_for_developers#Changes_for_Mozilla_and_add-on_developers">Mozilla project developers</a> to help take full advantage of the features of this release.</p>

<h2 id="Changes_for_web_developers">Changes for web developers</h2>

<h3 id="HTML">HTML</h3>

<ul>
 <li>The <a href="/zh-TW/docs/Web/API/HTMLImageElement" title="HTMLImageElement 介面提供了特殊的屬性及方法以用來操作 &lt;img> 元素的畫面佈局與外觀呈現。"><code>HTMLImageElement</code></a> <code>crossOrigin</code> property has been added and the <code><a href="/zh-TW/docs/Web/HTML/Element/img#attr-crossorigin">crossorigin</a></code> attribute has been added to the <a href="/zh-TW/docs/Web/HTML/Element/img" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;img&gt;</code></a> element. (see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=664299" title="FIXED: Add crossorigin attribute">bug 664299</a>)</li>
 <li>The <a href="/zh-TW/docs/Web/API/HTMLSelectElement#add()" title=""><code>HTMLSelectElement.add()</code></a> method now supports either an item or index of an item that the new item should be inserted before. Previously it only supported an item. (see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=666200" title="FIXED: support select.add(element, long before)">bug 666200</a>)</li>
 <li>The <code>HTMLIsIndexElement</code> constructor has been removed. No elements have implemented this interface since before Firefox 4.</li>
 <li>The HTML5 "context menu" feature (<code>contextmenu</code> attribute), which lets you add custom element specific items to native context menu, is now supported (the implementation is still experimental awaiting changes in the specification; see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=617528" title='FIXED: implement the HTML5 "context menu" feature (contextmenu attribute)'>bug 617528</a>).</li>
 <li>Support for the <a href="/en/HTML/Global_attributes#attr-accesskeylabel" title="https://developer.mozilla.org/en/HTML/Global_attributes#attr-accesskeylabel"><code>accesskeylabel</code></a> attribute has been added to all elements.</li>
 <li>The <a href="/zh-TW/docs/Web/HTML/Element/input" title="The HTML &lt;input> element is used to create interactive controls for web-based forms in order to accept data from the user."><code>&lt;input&gt;</code></a> and <a href="/zh-TW/docs/Web/HTML/Element/textarea" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;textarea&gt;</code></a> elements now support the <code>selectionDirection</code> attribute, and their <code>setSelectionRange()</code> methods have been updated to support optionally specifying a direction.</li>
 <li>Most elements now get a focus ring drawn around them if they've been made focusable by using the <code>tabindex</code> attribute and the user then focuses the element.</li>
 <li>In a set of nested <a href="/zh-TW/docs/Web/HTML/Element/label" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;label&gt;</code></a> elements click events do no longer trigger multiple <label> elements, which caused Firefox to stop responding in the past (see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=646157" title="FIXED: Stops responding when selecting a checkbox on the Netapp admin page inside deeply nested &lt;label>s">bug 646157</a>).</label></li>
</ul>

<h3 id="DOM">DOM</h3>

<ul>
 <li>The <a href="/zh-TW/docs/Web/API/Element/insertAdjacentHTML" title="insertAdjacentHTML() 把傳入的字串解析成 HTML 或 XML,並把該節點插入到 DOM 樹指定的位置。它不會重新解析被使用的元素,因此他不會破壞該元素裡面原有的元素。這避免了序列化的複雜步驟,使得它比直接操作  innerHTML 快上許多。"><code>insertAdjacentHTML</code></a> method has been implemented.</li>
 <li><a href="/zh-TW/docs/Web/API/BlobBuilder" title="The documentation about this has not yet been written; please consider contributing!"><code>BlobBuilder</code></a> now has a <code>getFile()</code> method that returns the content of the blob as a file.</li>
 <li>The <a href="/zh-TW/docs/Web/API/FileReaderSync" title="The documentation about this has not yet been written; please consider contributing!"><code>FileReaderSync</code></a> interface (part of the FileAPI) has been implemented.</li>
 <li>Event handling in nested <a href="/zh-TW/docs/Web/HTML/Element/label" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;label&gt;</code></a>s has been fixed.</li>
 <li>You can now use <a href="/zh-TW/docs/Web/API/Window/postMessage" title="The documentation about this has not yet been written; please consider contributing!"><code>window.postMessage()</code></a> to pass <a href="/zh-TW/docs/Web/API/File" title="File 介面提供了檔案的資訊並且允許網頁中的 JavaScript 存取檔案的內容。"><code>File</code></a> and <a href="/zh-TW/docs/Web/API/FileList" title='FileList 型別物件通常來自 HTML &amp;lt;input> 元素 DOM 物件的 files 屬性(property)。你可以操作 FileList 物件來存取使用者透過 &amp;lt;input type="file"> 元素所選取的檔案,或由拖放操作所產生的檔案(請參考 DataTransfer 物件的更多使用細節)。'><code>FileList</code></a> objects between windows.</li>
 <li>When editing <a href="/zh-TW/docs/Web/API/Element/contenteditable" title="The documentation about this has not yet been written; please consider contributing!"><code>element.contenteditable</code></a> areas, exiting a heading by pressing return, or exiting list editing mode by pressing return twice, now returns to paragraph entry mode (that is, paragraphs inside <a href="/zh-TW/docs/Web/HTML/Element/p" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;p&gt;</code></a> blocks) instead of separating lines by <a href="/zh-TW/docs/Web/HTML/Element/br" title="HTML &lt;br> 元素會產生文字的斷行(carriage-return、CR 或是確認鍵)。此元素主要用於寫詩或寫住址,這種斷行有所意義的時候。"><code>&lt;br&gt;</code></a> elements.</li>
 <li>Fixed a bug that prevents justification from taking effect properly when applied to the first line in a <a href="/zh-TW/docs/Web/API/Element/contenteditable" title="The documentation about this has not yet been written; please consider contributing!"><code>element.contenteditable</code></a> area.</li>
 <li>Fixed a bug that caused pressing delete or backspace at the beginning of a <a href="/zh-TW/docs/Web/API/Element/contenteditable" title="The documentation about this has not yet been written; please consider contributing!"><code>element.contenteditable</code></a> area to affect the previous <code>contenteditable</code> block if one is present.</li>
 <li><a href="/zh-TW/docs/Web/API/Document/getSelection" title="The documentation about this has not yet been written; please consider contributing!"><code>document.getSelection()</code></a> now returns the same <code>Selection</code> object as <a href="/zh-TW/docs/Web/API/Window/getSelection" title="The documentation about this has not yet been written; please consider contributing!"><code>window.getSelection()</code></a>, instead of <em>stringifying</em> it.</li>
 <li>The HTML5 <code>selectionDirection</code> property makes it possible to define the direction of the selection in an editable text.</li>
 <li><a href="/zh-TW/docs/Web/API/HTMLMediaElement" title="The HTMLMediaElement interface adds to HTMLElement the properties and methods needed to support basic media-related capabilities that are common to audio and video."><code>HTMLMediaElement</code></a> now have a <code>seekable</code> property that return a <a href="/zh-TW/docs/Web/API/TimeRanges" title="The documentation about this has not yet been written; please consider contributing!"><code>TimeRanges</code></a> object.</li>
 <li>The <a href="/zh-TW/docs/Web/API/HTMLMediaElement" title="The HTMLMediaElement interface adds to HTMLElement the properties and methods needed to support basic media-related capabilities that are common to audio and video."><code>HTMLMediaElement</code></a><code>.preload</code> attribute now correctly reflects as an <em>enumerated value</em>.</li>
 <li><a href="/en/HTML/CORS_settings_attributes" title="en/HTML/CORS_settings_attributes"><code>crossOrigin</code> property</a> defaults to "Anonymous" when an invalid value is used.</li>
 <li><a href="/zh-TW/docs/Web/API/Window/navigator/cookieEnabled" title="The documentation about this has not yet been written; please consider contributing!"><code>window.navigator.cookieEnabled</code></a> now returns correct information when the default cookie setting is overridden on a per-site basis.</li>
</ul>

<h3 id="JavaScript">JavaScript</h3>

<ul>
 <li><code><a href="/en/JavaScript/Reference/Global_Objects/RegExp/exec" title="en/JavaScript/Reference/Global Objects/RegExp/exec">RegExp.exec()</a></code> and <code><a href="/en/JavaScript/Reference/Global_Objects/RegExp/test" title="en/JavaScript/Reference/Global Objects/RegExp/test">RegExp.test()</a></code> called with no arguments now match against the string "undefined".</li>
 <li><code><a href="/en/JavaScript/Reference/Global_Objects/String/search" title="en/JavaScript/Reference/Global Objects/String/search">String.search()</a></code> and <code><a href="/en/JavaScript/Reference/Global_Objects/String/match" title="en/JavaScript/Reference/Global Objects/String/match">String.match()</a></code> called with no arguments or <code>undefined</code> now match against the empty string and thus match every string.</li>
 <li>Support for watchlists has been implemented with the new (non-standard) <a href="/en/JavaScript/Reference/Global_Objects/Object/watch" title="en/JavaScript/Reference/Global_Objects/Object/watch"><code>watch()</code></a> and <a href="/en/JavaScript/Reference/Global_Objects/Object/unwatch" title="en/JavaScript/Reference/Global_Objects/Object/unwatch"><code>unwatch()</code></a> methods.</li>
</ul>

<h3 id="CSS">CSS</h3>

<ul>
 <li><a href="/zh-TW/docs/Web/CSS/resolution" title="The documentation about this has not yet been written; please consider contributing!"><code>resolution</code></a> now accepts <a href="/zh-TW/docs/Web/CSS/number" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;number&gt;</code></a>, not just <a href="/zh-TW/docs/Web/CSS/integer" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;integer&gt;</code></a> values as per the specification.</li>
 <li>Hyphenation rules have been added for many new languages when using <a href="/zh-TW/docs/Web/CSS/hyphens" title="The documentation about this has not yet been written; please consider contributing!"><code>hyphens</code></a>.</li>
 <li>Handling of <a href="/zh-TW/docs/Web/CSS/background-size" title="The documentation about this has not yet been written; please consider contributing!"><code>background-size</code></a> has been revised to more closely match the specification.</li>
 <li>In the past, <a href="/zh-TW/docs/Web/CSS/text-decoration" title="The documentation about this has not yet been written; please consider contributing!"><code>text-decoration</code></a> in quirks mode had line thickness and position adjusted on descendant text to match the descendant. Now standards mode and quirks mode rendering are more similar.</li>
 <li>Horizontal positioning for elements has been brought more in line with the specification in many cases. Documentation for this is forthcoming, but for now, see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=682780" title="jig.com looks different in aurora vs. firefox">bug 682780</a>, comment 23 for details.</li>
 <li><a href="/en/CSS/Scaling_of_SVG_backgrounds" title="en/CSS/Scaling_of_SVG_backgrounds">SVG images are now scaled properly</a> when used as background images.</li>
</ul>

<h3 id="Network">Network</h3>

<ul>
 <li>Double quotes are no longer accepted as a delimiter for <a href="https://tools.ietf.org/html/rfc2231">RFC 2231</a> or <a href="https://tools.ietf.org/html/rfc5987">RFC 5987</a> encoding, as per those RFCs.</li>
 <li>MIME header field parser (<code>Content-Disposition</code>) now requires "=" in parameters.</li>
 <li>Scripts are no longer downloaded when JavaScript is disabled.</li>
 <li>SSL 2.0 is no longer supported.</li>
</ul>

<h3 id="WebSockets">WebSockets</h3>

<ul>
 <li>The <a href="/en/WebSockets/WebSockets_reference/WebSocket" title="WebSocket"><code>WebSocket</code></a> object's <a href="/en/WebSockets/WebSockets_reference/WebSocket#send()" title="en/WebSockets/WebSockets reference/WebSocket#send()"><code>send()</code></a> method no longer incorrectly returns a Boolean value.</li>
 <li>The <a href="/en/WebSockets/WebSockets_reference/WebSocket" title="WebSocket"><code>WebSocket</code></a> object's <a href="/en/WebSockets/WebSockets_reference/WebSocket#close()" title="en/WebSockets/WebSockets_reference/WebSocket#close()"><code>close()</code></a> method now matches the current draft of the standard, and close events now properly use the <a href="/en/WebSockets/WebSockets_reference/CloseEvent" title="CloseEvent"><code>CloseEvent</code></a> interface.</li>
 <li>The <a href="/en/WebSockets/WebSockets_reference/WebSocket" title="WebSocket"><code>WebSocket</code></a> object's <code>extensions</code> attribute is now supported.</li>
 <li>The WebSocket constructor now supports an array of protocols as well as a single protocol string.</li>
 <li>Mixed content is not allowed with WebSockets; that is, you can no longer open a connection to a non-secure WebSocket server from secure content.</li>
 <li>Connection errors with WebSockets now trigger the <code>onerror</code> handler.</li>
 <li><a href="/en/WebSockets" title="en/WebSockets">WebSocket</a> API has been updated to the latest draft of the specification (see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=674890" title="FIXED: Update WebSocket API to latest draft - send() should return void">bug 674890</a>, <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=674527" title="FIXED: Update WebSocket API to latest draft - array of protocols in ctor">bug 674527</a>, and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=674716" title="FIXED: Update WebSocket API to latest draft - close codes and reasons">bug 674716</a>).</li>
 <li>The deflate-stream extension to WebSockets has been disabled; it has been deprecated, and was breaking compatibility with some sites.</li>
</ul>

<h3 id="WebGL">WebGL</h3>

<ul>
 <li><a href="/en/WebGL/Cross-Domain_Textures" title="en/WebGL/Cross-Domain Textures">Cross-domain textures</a> can now be allowed with CORS approval.</li>
 <li>Cross-process rendering with Direct2D/Direct3D 10.</li>
</ul>

<h3 id="MathML">MathML</h3>

<ul>
 <li>Support for the <code>displaystyle</code> attribute on the top-level <code><a href="/zh-TW/docs/Web/MathML/Element/math" title="&lt;math>">&lt;math&gt;</a></code> element has been added.</li>
 <li>The interpretation of negative row numbers for the <code>align</code> attribute on <code><a href="/zh-TW/docs/Web/MathML/Element/mtable" title="&lt;mtable>">&lt;mtable&gt;</a></code> has been corrected.</li>
</ul>

<h3 id="Developer_tools">Developer tools</h3>

<ul>
 <li>The <a href="/en/Tools/Web_Console#The_console_object" title="en/Using_the_Web_Console#The_console_object"><code>console</code></a> object has a new <code>dir()</code> method, which displays an interactive list of the properties on a specified object.</li>
</ul>

<h2 id="Changes_for_Mozilla_and_add-on_developers">Changes for Mozilla and add-on developers</h2>

<p>See <a href="/en/Firefox/Updating_add-ons_for_Firefox_8" title="en/Firefox/Updating_add-ons_for_Firefox_8">Updating add-ons for Firefox 8</a> for a guide to changes you're likely to have to make to make your add-ons compatible with Firefox 8.</p>

<div class="note"><strong>Note:</strong> Firefox 8 requires that binary components be recompiled, as do all major releases of Firefox. See <a href="/En/Developer_Guide/Interface_Compatibility#Binary_Interfaces" title="En/Developer_Guide/Interface_Compatibility#Binary_Interfaces">Binary Interfaces</a> for details.</div>

<h3 id="XPCOM">XPCOM</h3>

<dl>
 <dt><a href="/en/Components.utils" title="en/Components.utils"><code>Components.utils</code></a></dt>
 <dd>The new methods <a href="/en/Components.utils.createObjectIn" title="en/Components.utils.createObjectIn"><code>Components.utils.createObjectIn()</code></a> and <a href="/en/Components.utils.makeObjectPropsNormal" title="en/Components.utils.makeObjectPropsNormal"><code>Components.utils.makeObjectPropsNormal()</code></a> have been created to make it easier to create objects in specific compartments.</dd>
</dl>

<h4 id="Other_XPCOM_related_changes">Other XPCOM related changes</h4>

<ul>
 <li>You can now instantiate DOM <a href="/zh-TW/docs/Web/API/File" title="File 介面提供了檔案的資訊並且允許網頁中的 JavaScript 存取檔案的內容。"><code>File</code></a> objects from component code by simply doing new File, instead of having to instantiate an <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDOMFile" title="">nsIDOMFile</a></code> directly.</li>
 <li>The <code>nsTPtrArray</code> array type has been removed. Its functionality is now all available on <code>nsTArray</code>, which now offers the <code>SafeElementAt()</code> method when instantiated using a pointer type. See the section on <a href="/en/XPCOM_array_guide#Bounds-safe_access_to_elements" title="en/XPCOM_array_guide#Bounds-safe_access_to_elements"><code>SafeElementAt()</code></a> in the <a href="/en/XPCOM_array_guide" title="XPCOM array guide">XPCOM array guide</a> for more information.</li>
</ul>

<h3 id="Workers">Workers</h3>

<p>It is no longer possible to access XPCOM objects from ChromeWorkers. XPConnect has been disabled in worker contexts as of <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=649537" title="FIXED: Workers: Make one OS thread and JS runtime per worker, and lose XPConnect">bug 649537</a>.</p>

<h3 id="XUL">XUL</h3>

<ul>
 <li>A bug in <a href="/zh-TW/docs/Web/API/Document/execCommand" title="当一个HTML文档切换到设计模式,文档对象会暴漏execCommand 方法,可以让用户运行命令操作可编辑区域的内容。大多指令作用于文档的选择(加粗,斜体等等),另外一些则是插入新元素(如添加一个链接)或者作用于一整行(如缩进)。当使用contentEditable 属性时,使用execCommand() 将会作用于当前激活的可编辑区域。"><code>document.execCommand()</code></a> that occurred when calling it on the value of <code><span><a href="https://developer.mozilla.org/zh-TW/docs/XUL/Property/contentDocument">contentDocument</a></span></code> has been fixed. Since Firefox 3, this resulted in errors instead of working correctly.</li>
 <li><a href="/en/Extensions/Bootstrapped_extensions" title="Bootstrapped extensions">Bootstrapped add-ons</a> can now load chrome using a <a href="/en/Chrome_Registration" title="en/chrome.manifest"><code>chrome.manifest</code></a> file. See the section <a href="/en/Extensions/Bootstrapped_extensions#Adding_user_interface_with_a_chrome.manifest" title="en/Extensions/Bootstrapped_extensions#Adding_user_interface_with_a_chrome.manifest">Adding user interface with a chrome.manifest</a> for details.</li>
 <li><a href="/en/XUL/image" title="en/XUL/image">XUL images</a> now shrink down with the same ratio in both directions when specifying maximum sizes.</li>
</ul>

<h3 id="Changes_to_the_build_system">Changes to the build system</h3>

<ul>
 <li>The following build configuration options have been removed:
  <ul>
   <li><code>--enable-timeline</code></li>
   <li><code>--disable-storage</code></li>
   <li><code>--necko-disk-cache</code></li>
  </ul>
 </li>
 <li>When compiling IDL files to headers, the header file <code>jspubtd.h</code> is automatically included when needed. Manual inclusions of <code>jspubtd.h</code> and/or <code>jsapi.h</code> in IDL files that use jsval or [implicit_jscontext] are no longer necessary.</li>
</ul>

<h3 id="Chrome_registration">Chrome registration</h3>

<ul>
 <li>The <a href="/en/Chrome_Registration#platformversion" title="en/Chrome_Registration#platformversion"><code>platformversion</code></a> flag can be used in the chrome.manifest to specify Gecko version compatibility.</li>
</ul>

<h3 id="Interface_changes">Interface changes</h3>

<ul>
 <li>The <code><a href="https://developer.mozilla.org/zh-TW/docs/XPCOM_Interface_Reference/mozIJSSubScriptLoader#loadSubScript()">mozIJSSubScriptLoader.loadSubScript()</a></code> method now loads scripts from the startup cache when possible.</li>
 <li>The <code>ownerWindow</code> attribute has been removed from the <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIAccessNode" title="">nsIAccessNode</a></code> interface.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDOMStorageWindow" title="">nsIDOMStorageWindow</a></code> interface has been merged into the <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDOMWindow" title="">nsIDOMWindow</a></code> interface.</li>
 <li>All members of the <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDOMWindowInternal" title="">nsIDOMWindowInternal</a></code> interface have been moved into the <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDOMWindow" title="">nsIDOMWindow</a></code> interface. The interface itself (with no members) remains available for compatibility until Firefox 9.</li>
 <li>In order to improve performance, callback handling for asynchronous Places database updates has been changed. See the new <code><a href="https://developer.mozilla.org/zh-TW/docs/XPCOM_Interface_Reference/mozIVisitInfoCallback#handleResult()">mozIVisitInfoCallback.handleResult()</a></code> and <code><a href="https://developer.mozilla.org/zh-TW/docs/XPCOM_Interface_Reference/mozIVisitInfoCallback#handleError()">mozIVisitInfoCallback.handleError()</a></code> methods, which replace the old single method for both error and success condition handling.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIMemoryReporter" title="">nsIMemoryReporter</a></code> <code>KIND_MAPPED</code> attribute has been deprecated in favor of <code>KIND_NONHEAP</code>, new unit types <code>UNITS_COUNT_CUMULATIVE</code> and <code>UNITS_PERCENTAGE</code> have been added.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIMemoryReporterManager" title="">nsIMemoryReporterManager</a></code> interface has a new <code>explicit</code> attribute, which reports the total size of explicit memory allocations.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIMemoryReporterManager" title="">nsIMemoryReporterManager</a></code> interface has a new <code>resident</code> attribute, which reports the amount of physical memory used.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsINetworkLinkService" title="">nsINetworkLinkService</a></code> interface has a new attribute, <code>linkType</code>. This attribute provides the type of network connection in use. All Operating Systems currently return <code>LINK_TYPE_UNKNOWN</code>. Android support was backed out due to perceived security concerns.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISelection2" title="">nsISelection2</a></code> interface has been merged into the <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISelectionPrivate" title="">nsISelectionPrivate</a></code> interface.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISelection3" title="">nsISelection3</a></code> interface has been merged into the <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISelection" title="">nsISelection</a></code> interface.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISessionStartup" title="">nsISessionStartup</a></code> attribute state is now a <a href="/En/SpiderMonkey/JSAPI_Reference/Jsval" title="en/jsval"><code>jsval</code></a> instead of a string, for performance reasons.</li>
 <li>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDocShell" title="">nsIDocShell</a></code> attribute <code>isActive</code> is now <code>false</code> for minimized windows.</li>
 <li>The <code><a href="https://developer.mozilla.org/zh-TW/docs/XPCOM_Interface_Reference/nsIDownloadHistory#addDownload()">nsIDownloadHistory.addDownload()</a></code> method now saves <span id="summary_alias_container"><span id="short_desc_nonedit_display">the the target where the download is saved on the local file system.</span></span></li>
</ul>

<h4 id="Removed_interfaces">Removed interfaces</h4>

<p>The following interfaces were implementation details that are no longer needed:</p>

<ul>
 <li><code>nsITimelineService</code></li>
 <li><code>nsIDOMHTMLIsIndexElement</code></li>
</ul>

<p>The <code><a href="/zh-TW/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIWorkerFactory" title="">nsIWorkerFactory</a></code> interface has been removed as well. Workers can still be created using the <code>Worker</code> and <code>ChromeWorker</code> constructors.</p>

<h3 id="Other_changes">Other changes</h3>

<ul>
 <li>When a window is minimized, un-minimized, or switches between full screen and windowed mode, it receives a <code>sizemodechange</code> event.</li>
 <li>You can now <a href="/en/Installing_extensions#Preventing_automatic_install_from_specific_locations" title="en/Installing_extensions#Preventing_automatic_install_from_specific_locations">use the <code>extensions.autoDisableScopes</code> preference</a> to disable automatic installation of add-ons from specific add-on install locations.</li>
 <li>The new <a href="/zh-TW/docs/Web/API/Document/mozSyntheticDocument" title="The documentation about this has not yet been written; please consider contributing!"><code>document.mozSyntheticDocument</code></a> property on <a href="/zh-TW/docs/Web/API/Document" title="Document 介面代表所有在瀏覽器中載入的網頁,也是作為網頁內容 DOM 樹"><code>Document</code></a> objects lets you determine whether a document is synthetic (that is, something like a standalone image, video, or audio file) rather than a full, standard DOM document. This can be useful, for example, if you want to present different user interface in this situation (such as adding contextual items differently depending on this case).</li>
 <li>You can now specify a filter when opening <code>about:config</code>; for example, "about:config?filter=sessionstore" will show only session storage related preferences.</li>
</ul>

<h2 id="See_also">See also</h2>

<ul>
 <li><a href="/en/Firefox_7_for_developers" title="en/Firefox_7_for_developers">Firefox 7 for developers</a></li>
 <li><a href="/en/Firefox_6_for_developers" title="en/Firefox_6_for_developers">Firefox 6 for developers</a></li>
 <li><a href="/en/Firefox_5_for_developers" title="en/Firefox_5_for_developers">Firefox 5 for developers </a></li>
 <li><a href="/en/Firefox_4_for_developers" title="en/Firefox_4_for_developers">Firefox 4 for developers </a></li>
 <li><a href="/en/Firefox_3.6_for_developers" title="en/Firefox_3.6_for_developers">Firefox 3.6 for developers </a></li>
 <li><a href="/En/Firefox_3.5_for_developers" title="En/Firefox_3.5_for_developers">Firefox 3.5 for developers</a></li>
 <li><a href="/en/Firefox_3_for_developers" title="en/Firefox_3_for_developers">Firefox 3 for developers</a></li>
 <li><a href="/en/Firefox_2_for_developers" title="en/Firefox_2_for_developers">Firefox 2 for developers</a></li>
 <li><a href="/en/Firefox_1.5_for_developers" title="en/Firefox_1.5_for_developers">Firefox 1.5 for developers</a></li>
</ul>