tabs.Tab - Mozilla

tabs.Tab
========

**`tabs.Tab`** 型はタブについての情報を含んでいます。これはタブの中のコンテンツについての情報へのアクセスを提供します。例えば、コンテンツはどれくらいの大きさか、どのような特別な状態もしくは制限が有効になっているか、など。

Type
----

この型の値はオブジェクトです。以下のプロパティを含みます:

`active`

`boolean`. タブがウィンドウ内でアクティブかどうかを示します。タブのウィンドウがフォーカスされていない場合でも当てはまります。

アクティブなタブは通常一つ検出されます。しかしながら、Firefox for Android 上では、拡張機能のポップアップが新しいタブの中で開かれます。このポップアップタブが検出されたとき、アクティブなタブはポップアップが開かれたタブに代えられます。

`attention` 省略可

`boolean`. タブが注目を集めているかを示します。例えば、タブがモーダルダイアログを表示したとき、`attention`は`true`になります。

`audible` 省略可

`boolean`. タブがミュートではないとき: タブが音を作り出すかどうかです。タブがミュートであるとき: タブがミュートでないなら、音を作り出せたかどうかです。

`autoDiscardable` 省略可

`boolean`. Whether the tab can be discarded automatically by the browser when resources are low.

`cookieStoreId` 省略可

`string`. タブのクッキーストア。If different tabs can have different cookie stores (for example, to support contextual identity), you can pass this as the `storeId` option into various methods of the `cookies` API, to set and get cookies associated with this tab's cookie store. Only present if the extension has the `"cookies"` permission.

`discarded` 省略可

`boolean`. タブが破棄されたか。 A discarded tab is one whose content has been unloaded from memory, but is still visible in the tab strip. Its content gets reloaded the next time it's activated.

`favIconUrl` 省略可

`string`. タブの favicon の URL。Only present if the extension has the `"tabs"` permission. It may also be an empty string if the tab is loading.

`height` 省略可

`integer`. タブの高さのピクセル値。

`hidden`

`boolean`. タブが隠されている(非表示)かどうか。

`highlighted`

`boolean`. タブがハイライトされているかどうかどうか。 An active tab is always highlighted, but some browsers may allow additional tabs to be highlighted, for example by clicking them while holding `Ctrl` or `⌘ Command` keys.

Firefox for Android doesn't support highlighting multiple tabs, and Firefox desktop requires the `browser.tabs.multiselect` preference.

`id` 省略可

`integer`. タブの ID。 タブの ID はブラウザセッショの中でユニークです。The tab ID may also be set to `tabs.TAB_ID_NONE` (en-US) for browser windows that don't host content tabs (for example, devtools windows).

`incognito`

`boolean`. タブがプライベートブラウジングウィンドウの中にあるかどうか。

`index`

`integer`. 0 を底としたウィンドウの中のタブのインデックス。

`isArticle`

`boolean`. True ならrendered in Reader Modeで閲覧可能、false ならそれ以外。

`isInReaderMode`

`boolean`. True ならrendered in Reader Modeで閲覧中、false ならそれ以外。

`lastAccessed`

`double`. タブが最後にアクセスされた時刻(単位: milliseconds since the epoch)。

`mutedInfo` 省略可

`tabs.MutedInfo`. The current muted state for the tab and the reason for the last state change.

`openerTabId` 省略可

`integer`. The ID of the tab that opened this tab, if any. This property is only present if the opener tab still exists.

`pinned`

`boolean`. タブがピン留めされているかどうか。

`selected`
非推奨

`boolean`. タブが選択されているかどうか。

`sessionId` 省略可

`string`. The session ID used to uniquely identify a `Tab` obtained from the `sessions` API.

`status` 省略可

`string`. *loading* か *complete* のどちらか。

`successorId` 省略可

`integer` タブの後継者の ID。

`title` 省略可

`string`. タブのタイトル。Only present if the extension has the `"tabs"` permission.

`url` 省略可

`string`. タブが表示しているドキュメントの URL。Only present if the extension has the `"tabs"` permission.

`width` 省略可

`integer`. タブの横幅のピクセル値。

`windowId`

`integer`. このタブのホストのウィンドウの ID。

**メモ:** In extension background scripts, the only properties that are available are tabId and **windowId.**

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

### Example extensions

* annotate-page
* apply-css
* beastify
* bookmark-it
* cookie-bg-picker
* find-across-tabs
* tabs-tabs-tabs

**メモ:** This API is based on Chromium's `chrome.tabs` API. This documentation is derived from `tabs.json` in the Chromium code.Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.


tabs.MutedInfoReason - Mozilla

tabs.MutedInfoReason
====================

タブがミュート・アンミュートになった理由を指定します。

型
-

値のタイプは文字列型です。可能な値:

"capture"

タブのキャプチャが開始され、ミュート状態に強いられました。

"extension"

拡張機能がミュート状態に設定しました。もしこれが理由なら、`tabs.mutedInfo`の`extensionId`が責任のある拡張機能の ID を含んでいます。

"user"

ユーザがミュート状態に設定しました。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** この API は Chromium の`chrome.tabs` API に基づいています。このドキュメントは Chromium コードの`tabs.json`から派生したものです。Microsoft Edge の互換性データは Microsoft Corporation から提供されており、Creative Commons Attribution 3.0 United States License のもとにここに含まれています。


tabs.create() - Mozilla

tabs.create()
=============

新しいタブを作ります。

これは`Promise`を返す非同期関数です.

構文
--

```js
var creating = browser.tabs.create(
  createProperties, // object
);
```

### パラメータ

`createProperties`

新しいタブについてのプロパティを与える`オブジェクト`。これらのプロパティについて詳しくは`tabs.Tab`を参照してください。

`active`省略可

タブをアクティブにするかどうかを`真理値`で指定します。ウィンドウがフォーカスされているかには影響されません(`windows.update` (en-US)も参照)。デフォルト値は`true`.

`cookieStoreId` 省略可

`文字列` 。タブの cookie store ID が`cookieStoreId`のタブを作るときに使用します。このオプションは拡張機能が`"cookies"` permissionを持つときのみ使用できます。

`index`省略可

`整数値`。ウィンドウ中のタブの位置を指定します。数値はゼロからウィンドウ内のタブの数までです。

`openerTabId`省略可

`整数値`。開くタブの ID を指定します。指定した場合、開く側のタブは新しいタブと同じウィンドウにある必要があります。

`openInReaderMode`省略可

`真理値`。もし`true`であればリーダーモードで開かれます。 デフォルトは`false`。

`pinned`省略可

`真理値`。タブをピン留めするかを指定します。デフォルトは`false`。

`selected`省略可

`真理値`。ウィンドウ内で選択されるかどうかを指定します。デフォルトは`true`。

**警告:** このプロパティは非推奨です。Firefox ではサポートされません。代わりに`active`を使用してください。

`url`省略可

`文字列`。はじめに開く URL を指定します。デフォルトは新しいタブ。
 スキームを含む完全な URL を指定します。(例えば 'www.google.com' → 'http://www.google.com').
 セキュリティの観点から Firefox では特権 URL は使用できません。

* chrome: URL
* javascript: URL
* data: URL
* file: URL(ファイルシステム上のファイルなど。拡張機能内にパッケージ化されたファイルは指定できます。下部を参照してください)
* 特権 about: URL (例、 `about:config`, `about:addons`, `about:debugging`)。ただし非特権 URL (`about:blank`) は使用できます。
* 新しいタブ (`about:newtab`) は URL を指定しなければ開かれます。

拡張機能内のファイルをロードするためには manifest.json ファイルからの絶対パスで指定します。（例: '/path/to/my-page.html'）。もし'/'を省略すると相対パスとして解釈されます。またブラウザによっては、また異なった絶対パスとして解釈されます。

`windowId`省略可

`整数値`。新しくタブを作るウィンドウを指定します。デフォルトは現在開いているウィンドウ。

### 返り値

新しく作ったタブに関する`tabs.Tab`オブジェクトを引数に持つ`Promise`が返されます。URL が特権 URL であるなどして、タブが作られなかった場合は promise はエラーメッセージとともに reject されます。

ブラウザー互換状況
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

例
-

"https://example.org" を新しいタブで開きます

```js
function onCreated(tab) {
  console.log(`Created new tab: ${tab.id}`);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

browser.browserAction.onClicked.addListener(function () {
  var creating = browser.tabs.create({
    url: "https://example.org",
  });
  creating.then(onCreated, onError);
});
```

### Example extensions

* commands
* contextual-identities
* find-across-tabs
* firefox-code-search
* open-my-page-button
* permissions
* store-collected-images
* tabs-tabs-tabs

**メモ:** この API は Chromium の`chrome.tabs` API に基づいています。 このドキュメントは `tabs.json` における Chromium のコードに基づいています。Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。


tabs.query() - Mozilla

tabs.query()
============

指定されたプロパティを持つ全てのタブを取得します。何も指定しない場合、全てのタブを取得します。

この関数は `Promise` を返す非同期関数です。

構文
--

```js
var querying = browser.tabs.query(
  queryInfo, // object
);
```

### パラメータ

`queryInfo`

`object`. `query()` 関数はここで指定されたプロパティにマッチするタブだけを取得します。 このプロパティについての詳細は `tabs.Tab` を参照してください。

`active`省略可

`boolean`. 各ウインドウの中でアクティブかどうか。

`audible`省略可

`boolean`. 音が鳴っているか。

`autoDiscardable`省略可

`boolean`. リソースが少なくなったときにブラウザーによって自動的に discard できるか。

`cookieStoreId` 省略可

`string`. Cookie ストアの ID が `cookieStoreId` なタブのみを返すために使います。このオプションは `"cookies"` permissionを持つ拡張でのみ使用できます。

`currentWindow`省略可

`boolean`. カレントウインドウの中のタブか。

`discarded`省略可

`boolean`. タブが discard されているか。 discard されたタブはコンテンツがメモリからアンロードされているが、タブの一覧には表示されたままになります。コンテンツはタブが次にアクティブになったときにリロードされます。

`highlighted`省略可

`boolean`. ハイライトされているか。

`index`省略可

`integer`. ウィンドウの中での位置。

`muted`省略可

`boolean`. ミュートされているか。

`lastFocusedWindow`省略可

`boolean`. 最後にフォーカスされたウインドウのタブか。

`openerTabId`省略可

`integer`. そのタブを開いたタブの ID。

`pinned`省略可

`boolean`. ピン留めされているか。

`status`省略可

`tabs.TabStatus` (en-US). ロードが完了しているか。

`title`省略可

`string`. ページのタイトル。

`url`省略可

`string` もしくは `array of string`. 1 つ以上のマッチパターンにマッチするタブか。フラグメント識別子にはマッチしません。

`windowId`省略可

`integer`. そのウインドウの ID。カレントウインドウの場合は、 `windows.WINDOW_ID_CURRENT` (en-US) 。

`windowType`省略可

`tabs.WindowType` (en-US). そのタブの属するウインドウの種類。

### 戻り値

マッチしたタブの情報を持つ ``tabs.Tab`` オブジェクトの `array` に解決される `Promise`。

エラーが発生した場合、その Promise はエラーメッセージとともに却下されます。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

例
-

全てのタブを取得する例：

```js
function logTabs(tabs) {
  for (let tab of tabs) {
    // tab.url requires the `tabs` permission
    console.log(tab.url);
  }
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var querying = browser.tabs.query({});
querying.then(logTabs, onError);
```

カレントウインドウの全てのタブを取得する例：

```js
function logTabs(tabs) {
  for (let tab of tabs) {
    // tab.url requires the `tabs` permission
    console.log(tab.url);
  }
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var querying = browser.tabs.query({ currentWindow: true });
querying.then(logTabs, onError);
```

カレントウインドウのアクティブなタブを取得する例：

```js
function logTabs(tabs) {
  for (let tab of tabs) {
    // tab.url requires the `tabs` permission
    console.log(tab.url);
  }
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var querying = browser.tabs.query({ currentWindow: true, active: true });
querying.then(logTabs, onError);
```

"mozilla.org" またはそのサブドメイン下の HTTP/HTTPS URL を開いている全てのタブを取得する例：

```js
function logTabs(tabs) {
  for (let tab of tabs) {
    // tab.url requires the `tabs` permission
    console.log(tab.url);
  }
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var querying = browser.tabs.query({ url: "\*://\*.mozilla.org/\*" });
querying.then(logTabs, onError);
```

moz-extension:// URL を開いている全てのタブを取得する例：

```js
function logTabs(tabs) {
  console.log(tabs);
  for (let tab of tabs) {
    // tab.url requires the `tabs` permission
    console.log(tab.url);
  }
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var querying = browser.tabs.query({ url: "moz-extension://\*/\*" });
querying.then(logTabs, onError);
```

この拡張機能の URL を開いている全てのタブを取得する例：

```js
function logTabs(tabs) {
  console.log(tabs);
  for (let tab of tabs) {
    // tab.url requires the `tabs` permission
    console.log(tab.url);
  }
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var querying = browser.tabs.query({ url: browser.extension.getURL("\*") });
querying.then(logTabs, onError);
```

### Example extensions

* annotate-page
* apply-css
* beastify
* bookmark-it
* chill-out
* contextual-identities
* cookie-bg-picker
* find-across-tabs
* history-deleter
* imagify
* list-cookies
* session-state
* tabs-tabs-tabs

**メモ:** この API は Chromium の `chrome.tabs` API に基づいています。 This documentation is derived from `tabs.json` in the Chromium code.Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。


tabs.captureVisibleTab() - Mozilla

tabs.captureVisibleTab()
========================

指定ウィンドウの選択タブの表示領域の画像をエンコードしたデータ URI を作成します。このメソッドを使うには `<all_urls>` パーミッション が必要です (Chrome の場合、`activeTab` パーミッション があり、ユーザーが許可の操作を行えば、このメソッドを使うことができます)。

これは、`Promise` を返す非同期関数です。

構文
--

```js
var capturing = browser.tabs.captureVisibleTab(
  windowId, // optional integer
  options, // optional extensionTypes.ImageDetails
);
```

### 引数

`windowId`省略可

`integer` 型。対象となるウィンドウ。デフォルトは現在のウィンドウ。

`options`省略可

`extensionTypes.ImageDetails` 型。

### 戻り値

`Promise` であり、キャプチャーされたタブの表示領域の画像をエンコードしたデータ URL で fulfilled 状態にされる。このデータ URL は、HTML イメージ要素の 'src' 属性に設定することで、画像を表示できる。もし何らかのエラーが発生した場合、Promise はエラーメッセージによって rejected 状態にされる。

使用例
---

現在のウィンドウの選択されたタブの画像を、デフォルト設定でキャプチャーする。

```js
function onCaptured(imageUri) {
  console.log(imageUri);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

browser.browserAction.onClicked.addListener(function () {
  var capturing = browser.tabs.captureVisibleTab();
  capturing.then(onCaptured, onError);
});
```

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** この API は Chromium の `chrome.tabs` API に基づいています。このドキュメントは `tabs.json` における Chromium のコードに基づいています。Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。


tabs.get() - Mozilla

tabs.get()
==========

タブの ID を指定し、`tabs.Tab`オブジェクトとしてタブの詳細を取得します。

これは`Promise`を返す非同期関数です。

構文
--

```js
var getting = browser.tabs.get(
  tabId, // integer
);
```

### 引数

`tabId`

`integer`. 取得するタブの ID。

### 返値

A `Promise` that will be fulfilled with a `tabs.Tab` object containing information about the tab. If the tab could not be found or some other error occurs, the promise will be rejected with an error message.

例
-

タブがアクティブなとき、情報を取得します:

```js
async function logListener(info) {
  try {
    let tabInfo = await browser.tabs.get(info.tabId);
    console.log(tabInfo);
  } catch (error) {
    console.error(error);
  }
}

browser.tabs.onActivated.addListener(logListener);
```

### Example extensions

* chill-out
ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** This API is based on Chromium's `chrome.tabs` API. This documentation is derived from `tabs.json` in the Chromium code.


tabs.onCreated - Mozilla

tabs.onCreated
==============

タブが生成されたときに発火します。

イベントが発火したとき、タブは URL を渡されていないかもしれないことに注意してください。特に、Firefox は新しいページを読み込み前に新しいタブを"about:blank"で開きます。URL がセットされたときを通知されるために`tabs.onUpdated` (en-US)イベントをリッスンすることができます。

書式
--

```js
browser.tabs.onCreated.addListener(callback);
browser.tabs.onCreated.removeListener(listener);
browser.tabs.onCreated.hasListener(listener);
```

イベントは３つの関数を持ちます:

`addListener(callback)`

このイベントにリスナーを追加します。

`removeListener(listener)`

このイベントのリスニングを停止します。引数`listener`は削除するリスナーです。

`hasListener(listener)`

`listener`がこのイベントに登録されているかを調べます。リスニング中であれば`true`を返し、そうでなければ`false`を返します

addListener の書式
---------------

### パラメータ

`callback`

このイベントが発生したときに呼び出される関数です。関数は次の引数を渡されます:

`tab`

`tabs.Tab`。生成されたタブの詳細です。

例
-

新しく作られたタブのログを生成します:

```js
function handleCreated(tab) {
  console.log(tab.id);
}

browser.tabs.onCreated.addListener(handleCreated);
```

### Example extensions

* session-state
* tabs-tabs-tabs
ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** この API は Chromium の`chrome.tabs` API に基づいています。このドキュメンテーションは Chromium code の中の`tabs.json`からの派生です。Microsoft Edge の互換性データは Microsoft Corporation から提供されており、ここに the Creative Commons Attribution 3.0 United States License のもとで含まれています。


tabs.MutedInfo - Mozilla

tabs.MutedInfo
==============

This object contains a boolean indicating whether the tab is muted, and the reason for the last state change.

型
-

値の型はオブジェクトです。次のプロパティを含みます:

`extensionId`省略可

`string`. ミュートの状態を最後に変更した拡張機能の ID です。もし拡張機能がミュートの状態の最後の変更の理由でないなら設定されません。

`muted`

`boolean`. タブが現在ミュートかどうか。Equivalent to whether the muted audio indicator is showing.

`reason`省略可

`tabs.MutedInfoReason`. ミュートもしくはアンピューとに設定された理由。Not set if the tab's muted state has never been changed.

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** This API is based on Chromium's `chrome.tabs` API. This documentation is derived from `tabs.json` in the Chromium code.Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.


alarms.Alarm - Mozilla

alarms.Alarm
============

単一のアラームに関する情報を含みます。このオブジェクトは `alarms.get()` や `alarms.getAll()` の戻り値として返されます。また、`alarms.onAlarm` リスナに渡されることもあります。

値の型
---

この値の型はオブジェクトであり、以下のプロパティを含みます。

`name`

`string`. アラームの名前（このアラームを生成した `alarms.create()` の呼び出し時に渡された名前）を表します。

`scheduledTime`

`double`. 次にアラームが発火する時刻（1970 年 1 月 1 日からの経過ミリ秒）を表します。

`periodInMinutes`省略可

`double`. この値が `null` ではない場合、アラームが発火する周期を分単位で表します。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** この API は Chromium の `chrome.alarms` API に基づいています。


alarms.onAlarm - Mozilla

alarms.onAlarm
==============

アドオンによってアラームが動作した際に発火します。

構文
--

```js
browser.alarms.onAlarm.addListener(function(
  alarm      // Alarm
) {...})
browser.alarms.onAlarm.removeListener(listener)
browser.alarms.onAlarm.hasListener(listener)
```

このイベントには 3 つのメソッドが用意されています。

`addListener(callback)`

イベントリスナを追加します。

`removeListener(listener)`

イベントリスナを削除します。引数 `listener` には削除したいリスナを指定します。

`hasListener(listener)`

`listener` がイベントリスナとして登録されているか確認します。登録されていれば `true` を、それ以外の場合は `false` を返します。

addListener の構文
---------------

### 引数

`callback`

このイベントが発火した際に呼び出される関数を指定します。この関数には以下の引数が渡ります。

`alarm`

発火するアラーム `alarms.Alarm` が入ります。発火したアラームを判別するには `Alarm.name` が利用できます。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

### Example extensions

* chill-out
* dynamic-theme

**メモ:** この API は Chromium の `chrome.alarms` API に基づいています。


alarms.create() - Mozilla

alarms.create()
===============

新しいアラームを生成します。

構文
--

```js
browser.alarms.create(
  name, // 文字列
  alarmInfo, // オブジェクト
);
```

### 引数

`name`省略可

`string`. アラームの名前を指定します。デフォルト値は空の文字列です。
 この値は `alarms.get()` や `alarms.clear()` で特定のアラームを参照する際に用います。また、`alarms.onAlarm` のリスナ関数に渡すオブジェクト `alarms.Alarm` のプロパティ `name` からも参照されます。
 アラームの名前は常に固有です（スコープはアドオンごとに区切られます）。以前そのアドオンが作成したアラーム名に一致する文字列を `name` に与えた場合、既存のアラームは削除されて発火しなくなります。

`alarmInfo`省略可

`object`. アラームが最初に発火する時刻を指定する引数です。時刻の指定には絶対値（`when` プロパティ）か、アラーム設定時を基準とした時間（`delayInMinutes` プロパティ）のどちらかで指定します。アラームを周期的に発火させるには `periodInMinutes` プロパティも指定します。

Chrome の場合、パッケージ化された状態でアドオンが読み込まれると、アラームを 1 分に 1 回以上の頻度で呼び出すことはできません。ここでアドオンが `delayInMinutes` や `when` に 1 未満の値を指定しようとすると、アラームは 1 分後に発火します。アドオンが `periodInMinutes` に 1 未満の値を指定した場合、アラームは 1 分おきに発火します。

`alarmInfo` オブジェクトで指定できるプロパティは以下の通りです。

`when`省略可

`double`. アラームが最初に発火する時刻を 1970 年 1 月 1 日からの経過ミリ秒 で指定します。現在までの経過ミリ秒は `Date.now()` で取得できます。`when` を指定した場合`は delayInMinutes` を指定しないでください。

`delayInMinutes`省略可

`double`. アラームが最初に発火する時刻を、アラーム設定時から何分後かで指定します。 `delayInMinutes` を指定した場合は `when` を指定しないでください。

`periodInMinutes`省略可

`double`. この値が指定された場合、アラームは最初の発火時刻から `periodInMinutes` の周期で繰り返し発火します。この値を指定したうえで`when` と `delayInMinutes` の両方を省略した場合、最初にアラームが発火するのは `periodInMinutes` の時間が経過した後になります。`periodInMinutes` が指定されなければ、アラームは一度だけ発火します。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

例
-

現在から相対的な時刻で一度限り発火するアラームを "" という名前で作成する例：

```js
const delayInMinutes = 5;

chrome.alarms.create({
  delayInMinutes,
});
```

現在からの相対的な時刻から繰り返すアラームを "my-periodic-alarm" の名前で作成する例：

```js
const delayInMinutes = 5;
const periodInMinutes = 2;

chrome.alarms.create("my-periodic-alarm", {
  delayInMinutes,
  periodInMinutes,
});
```

絶対的な時刻から繰り返すアラームを "my-periodic-alarm" の名前で作成する例：

```js
const when = 1545696000;
const periodInMinutes = 2;

chrome.alarms.create("my-periodic-alarm", {
  when,
  periodInMinutes,
});
```

**メモ:** この API は Chromium の `chrome.alarms` API に基づいています。Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。


alarms.clear() - Mozilla

alarms.clear()
==============

与えた名前に対応するアラームを解除します。

構文
--

```js
browser.alarms.clear(
  name,                        // 文字列
  function(wasCleared) {...}   // 関数
)
```

### 引数

`name`省略可

`string`. 解除したいアラームの名前を指定します。指定しなかった場合は空文字列 "" が用いられます。

`callback`省略可

`function`. この関数には以下の引数が渡されます。

`wasCleared`

`boolean`. アラームが解除された場合は `true` が、それ以外の場合は `false` が入ります。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** この API は Chromium の `chrome.alarms` API に基づいています。


alarms.clearAll() - Mozilla

alarms.clearAll()
=================

予約されたアラームすべてを解除します。

構文
--

```js
browser.alarms.clearAll(
  function(wasCleared) {...}   // 関数
)
```

### 引数

`callback`

`function`. この関数には以下の引数が渡ります。

`wasCleared`

`boolean`. アラームが解除された場合は `true` が、それ以外の場合は `false` が入ります。Chrome の場合は常に `true` が入ることに注意してください。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

### Example extensions

* chill-out

**メモ:** この API は Chromium の `chrome.alarms` API に基づいています。


alarms.getAll() - Mozilla

alarms.getAll()
===============

予約されたアラームすべてを取得します。取得されたアラームは `alarms.Alarm` オブジェクトの配列としてコールバック関数に渡されます。

構文
--

```js
browser.alarms.getAll(
  function(array) {...}   // 関数
)
```

### 引数

`callback`

`function`. この関数には以下の引数が渡ります。

`alarms`

予約されたアラームすべてを含む ``alarms.Alarm`` の配列です。予約されたアラームがない場合は空の配列となります。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

例
-

コールバックを用いた例：

```js
function gotAll(alarms) {
  for (var alarm of alarms) {
    console.log(alarm.name);
  }
}

chrome.alarms.getAll(gotAll);
```

Promise を用いた例：

```js
function gotAll(alarms) {
  for (var alarm of alarms) {
    console.log(alarm.name);
  }
}

var getAlarms = browser.alarms.getAll();
getAlarms.then(gotAll);
```

**メモ:**

この API は Chromium の `chrome.alarms` API に基づいています。


alarms.get() - Mozilla

alarms.get()
============

与えた名前に対応するアラームを取得します。取得したアラームは、コールバック関数に渡す `alarms.Alarm` オブジェクトとして用いることがあります。

構文
--

```js
browser.alarms.get(
  name,                   // 文字列
  function(alarm) {...}   // 関数
)
```

### 引数

`name`省略可

`string`. 取得したいアラームの名前を指定します。指定しなかった場合は空文字列 "" が用いられます。

`callback`

`function`. この関数には以下の引数が渡ります。

`alarm`

``alarms.Alarm``. 名前が `name` にマッチするアラームが入ります。マッチするアラームがなかった場合、`undefined` が入ります。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**メモ:** この API は Chromium の `chrome.alarms` API に基づいています。


Firefox 開発者向けリリースノート - Mozilla

Firefox 開発者向けリリースノート
====================

以下は、開発者向けの Firefox リリースノートへのリンクです。どの機能や API が追加され、改善されたか、Firefox の各バージョンでどのようなバグが修正されたかについての詳細が、懇切丁寧に記されています。これらは皆さん開発者がほしいかと思って用意したものです。えっへん。

1. Firefox 121 for developers
2. Firefox 120 for developers
3. Firefox 119 for developers
4. Firefox 118 for developers
5. Firefox 117 for developers
6. Firefox 116 for developers
7. Firefox 115 for developers
8. Firefox 114 for developers
9. Firefox 113 for developers
10. Firefox 112 for developers
11. Firefox 111 for developers
12. Firefox 110 for developers
13. Firefox 109 for developers
14. Firefox 108 for developers
15. Firefox 107 for developers
16. Firefox 106 for developers
17. Firefox 105 for developers
18. Firefox 104 for developers
19. Firefox 103 for developers
20. Firefox 102 for developers
21. Firefox 101 for developers
22. Firefox 100 for developers
23. Firefox 99 for developers
24. Firefox 98 for developers
25. Firefox 97 for developers
26. Firefox 96 for developers
27. Firefox 95 for developers
28. Firefox 94 for developers
29. Firefox 93 for developers
30. Firefox 92 for developers
31. Firefox 91 for developers
32. Firefox 90 for developers
33. Firefox 89 for developers
34. Firefox 88 for developers
35. Firefox 87 for developers
36. Firefox 86 for developers
37. Firefox 85 for developers
38. Firefox 84 for developers
39. Firefox 83 for developers
40. Firefox 82 for developers
41. Firefox 81 for developers
42. Firefox 80 for developers
43. Firefox 79 for developers
44. Firefox 78 for developers
45. Firefox 77 for developers
46. Firefox 76 for developers
47. Firefox 75 for developers
48. Firefox 74 for developers
49. Firefox 73 for developers
50. Firefox 72 for Developers
51. Firefox 71 for Developers
52. Firefox 70 for developers
53. Firefox 69 for developers
54. Firefox 68 for developers
55. Firefox 67 for developers
56. Firefox 66 for developers
57. Firefox 65 for developers
58. Firefox 64 for developers
59. Firefox 63 for developers
60. Firefox 62 for developers
61. Firefox 61 for developers
62. Firefox 60 for developers
63. Firefox 59 for developers
64. Firefox 58 for developers
65. Firefox 57 (Quantum) for developers
66. Firefox 56 for developers
67. Firefox 55 for developers
68. Firefox 54 for developers
69. Firefox 53 for developers
70. Firefox 52 for developers
71. Firefox 51 for developers
72. Firefox 50 for developers
73. Firefox 49 for developers
74. Firefox 48 for developers
75. Firefox 47 for developers
76. Firefox 46 for developers
77. Firefox 45 for developers
78. Firefox 44 for developers
79. Firefox 43 for developers
80. Firefox 42 for developers
81. Firefox 41 for developers
82. Firefox 40 for developers
83. Firefox 39 for developers
84. Firefox 38 for developers
85. Firefox 37 for developers
86. Firefox 36 for developers
87. Firefox 35 for developers
88. Firefox 34 for developers
89. Firefox 33 for developers
90. Firefox 32 for developers
91. Firefox 31 for developers
92. Firefox 30 for developers
93. Firefox 29 for developers
94. Firefox 28 for developers
95. Firefox 27 for developers
96. Firefox 26 for developers
97. Firefox 25 for developers
98. Firefox 24 for developers
99. Firefox 23 for developers
100. Firefox 22 for developers
101. Firefox 21 for developers
102. Firefox 20 for developers
103. Firefox 19 for developers
104. Firefox 18 for developers
105. Firefox 17 for developers
106. Firefox 16 for developers
107. Firefox 15 for developers
108. Firefox 14 for developers
109. Firefox 13 for developers
110. Firefox 12 for developers
111. Firefox 11 for developers
112. Firefox 10 for developers
113. Firefox 9 for developers
114. Firefox 8 for developers
115. Firefox 7 for developers
116. Firefox 6 for developers
117. Firefox 5 for developers
118. Firefox 4 for developers
119. Firefox 3.6 for developers
120. Firefox 3.5 開発者向け情報
121. Firefox 3 for developers
122. Firefox 2 for developers
123. Firefox 1.5 for developers

Firefox がいっぱい！すごい！

関連情報
----

* Thunderbird 開発者向けリリースノート


Firefox における実験的機能 - Mozilla

Firefox における実験的機能
=================

 このページでは、提案されているまたは最先端のウェブプラットフォーム標準を含む、 Firefox の実験的かつ部分的に実装された機能を一覧にしています。また、それらの機能が搭載されているビルドの情報、「既定で」有効になっているかどうか、有効または無効にするためにどの*環境設定*を使用すべきかについても説明しています。
 これにより、機能がリリースされる前に、その機能をテストすることができます。

 新機能は、最初に Firefox Nightly ビルドに登場し、多くの場合、既定で有効化されます。
 その後、 Firefox Developer Edition に引き継がれ、最終的にはリリースビルドになります。
 リリースビルドにおいて既定で有効化された機能は、もはや実験的なものではないので、このトピックから削除してください。

実験的な機能は、 Firefox 設定エディター (Firefox のアドレスバーに `about:config` と入力) を使って、以下に示す関連する*設定*を変更することで、有効または無効にすることができます。

**メモ:** 編集者の方へ - これらの表に機能を追加する際には、リンク `[Firefox バグ <number>](https://bugzil.la/<number>)` を使って関連するバグへのリンクを含めるようにしてください。

HTML
----

### inert 属性

`HTMLElement` の `HTMLElement.inert` プロパティは論理値で、存在する場合、ブラウザーが支援技術、ページ検索、テキスト選択から要素を「無視」するようになります。この機能の状態についての詳細は、 Firefox バグ 1655722 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 81 | No |
| Developer Edition | 81 | No |
| Beta | 81 | No |
| Release | 81 | No |
| Preference name | `html5.inert.enabled` |

### input type="search" のレイアウト

`input type="search"` のレイアウトが更新されました。これにより、何らかの入力を始めたときに、他のブラウザーの実装と同様にクリアアイコンが現れるようになります。 (詳しくは Firefox バグ 558594 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 81 | No |
| Developer Edition | 81 | No |
| Beta | 81 | No |
| Release | 81 | No |
| Preference name | `layout.forms.input-type-search.enabled` |

### パスワード表示のトグル切り替え

HTML のパスワード入力要素 (`<input type="password">`) に「目」のアイコンが入り、パスワードのテキストを表示したり隠したりすることができるようになります (Firefox バグ 502258)。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 96 | No |
| Developer Edition | 96 | No |
| Beta | 96 | No |
| Release | 96 | No |
| Preference name | `layout.forms.input-type-show-password-button.enabled` |

CSS
---

### CSS の迷子の制御文字を 16 進数のボックスで表示する

この機能は、予期せずタブ (U+0009)、行送り (U+000A)、ページ送り (U+000C)、復改 (U+000D) 以外の制御文字 (Unicode の Cc カテゴリー) が現れていない場合に 16 進数で表示します。 (詳細は Firefox バグ 1099557 を参照してください)。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 43 | Yes |
| Developer Edition | 43 | No |
| Beta | 43 | No |
| Release | 43 | No |
| Preference name | `layout.css.control-characters.enabled` or
 `layout.css.control-characters.visible` |

### initial-letter プロパティ

CSS の `initial-letter` プロパティは、 CSS インラインレイアウト仕様書に含まれており、先頭文字の表示方法を dropped, raise, sunken から指定することができます。 (詳細は Firefox バグ 1223880 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 50 | No |
| Developer Edition | 50 | No |
| Beta | 50 | No |
| Release | 50 | No |
| Preference name | `layout.css.initial-letter.enabled` |

### メディアクエリーで縦横比として 1 つの数値を使用

メディアクエリーで縦横比を指定する際に、 1 つの `<number>` を `<ratio>` として使用できるようになりました。 (詳細は Firefox バグ 1565562 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 70 | No |
| Developer Edition | 70 | No |
| Beta | 70 | No |
| Release | 70 | No |
| Preference name | `layout.css.aspect-ratio-number.enabled` |

### backdrop-filter プロパティ

`backdrop-filter` プロパティは、要素の背後の領域にフィルター効果を適用します。 (詳しくは Firefox バグ 1178765 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 70 | No |
| Developer Edition | 70 | No |
| Beta | 70 | No |
| Release | 70 | No |
| Preference name | `layout.css.backdrop-filter.enabled` |

### fit-content() 関数の width など大きさを指定するプロパティでの使用

`fit-content()` 関数は `width` やその他の寸法のプロパティに適用します。この関数は、 CSS グリッドレイアウトのトラックのサイズ調整ですでに十分対応しています。(詳細は Firefox バグ 1312588 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 91 | No |
| Developer Edition | 91 | No |
| Beta | 91 | No |
| Release | 91 | No |
| Preference name | `layout.css.fit-content-function.enabled` |

### グリッド: メイソンリーレイアウト

グリッドレイアウトをベースにしたメイソンスタイルレイアウトを追加しました。メイソンリーレイアウトスタイルレイアウトは、一方の軸がメイソンリーレイアウトスタイル、もう一方の軸が通常のグリッドレイアウトです。これにより、開発者は Pinterest のようなギャラリースタイルのレイアウトを簡単に作成できるようになります。詳しくは Firefox バグ 1607954 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 77 | Yes |
| Developer Edition | 77 | No |
| Beta | 77 | No |
| Release | 77 | No |
| Preference name | `layout.css.grid-template-masonry-value.enabled` |

### math-style プロパティ

`math-style` プロパティは、 MathML の数式の高さを通常にするかコンパクトにするかを示します。 (詳しくは Firefox バグ 1665975 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 83 | No |
| Developer Edition | 83 | No |
| Beta | 83 | No |
| Release | 83 | No |
| Preference name | `layout.css.math-style.enabled` |

### スクロール連動レイアウト

`@scroll-timeline` アットルールと `animation-timeline` プロパティで、（時間ではなく）コンテナーのスクロール進行に連動するアニメーションを定義することができます。
 指定されたスクロールタイムラインは、 CSS アニメーション に `animation-timeline` プロパティを用いて関連付けられます。
 詳しくは Firefox バグ 1676791 と Firefox バグ 1676782 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 97 | No |
| Developer Edition | 97 | No |
| Beta | 97 | No |
| Release | 97 | No |
| Preference name | `layout.css.scroll-linked-animations.enabled` |

SVG
---

### SVGPathSeg API

 SVGPathSeg API はアンシッピングされ、設定に隠されて配置されています。
 これには `SVGPathSegList`, SVGPathElement.getPathSegAtLength() (en-US), `SVGAnimatedPathData` が含まれます。
 （詳しくは Firefox バグ 1388931 を参照してください）。

| Release channel | Version removed | Enabled by default? |
| --- | --- | --- |
| Nightly | 97 | No |
| Developer Edition | 97 | No |
| Beta | 97 | No |
| Release | 97 | No |
| Preference name | `dom.svg.pathSeg.enabled` |

JavaScript
----------

### 配列のグループ化メソッド

 jsxref("Array.prototype.groupBy()")}} と `Array.prototype.groupByToMap()` メソッドは、それぞれテスト関数が返す文字列や値を使って配列の要素をグループ化するために使用されます。
 文字列で要素のグループを表現できる場合は `groupBy` メソッドを使用し、値をキーとして使用することが理にかなっている場合は `groupByToMap()` を使用する必要があります。
 （詳しくは Firefox バグ 1739648 を参照してください。）

| Release channel | Version removed | Enabled by default? |
| --- | --- | --- |
| Nightly | 98 | Yes |
| Developer Edition | 98 | No |
| Beta | 98 | No |
| Release | 98 | No |
| Preference name | None |

API
---

### グラフィック: Canvas, WebGL, WebGPU

### OffscreenCanvas インターフェイス

`OffscreenCanvas` (en-US) インターフェイスは、画面外で描画できるキャンバスを提供します。これは、ウィンドウとワーカーの両方のコンテキストで利用できます。（詳細は Firefox バグ 1390089 を参照してください。）

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 44 | No |
| Developer Edition | 44 | No |
| Beta | 44 | No |
| Release | 44 | No |
| Preference name | `gfx.offscreencanvas.enabled` |

#### ヒット領域

マウスの座標がキャンバス上の特定の領域内にあるかどう かは、解決すべき一般的な問題です。ヒット領域 API を使用すると、キャンバスの領域を定義することができ、キャンバス上のインタラクティブコンテンツをアクセシビリティ ツールに公開する別の可能性が生まれます。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 30 | No |
| Developer Edition | 30 | No |
| Beta | 30 | No |
| Release | 30 | No |
| Preference name | `canvas.hitregions.enabled` |

#### WebGL: ドラフト拡張

この設定を有効にすると、現在 "draft" ステータスでテスト中の WebGL 拡張機能が使用可能になります。現在、 Firefox でテスト中の WebGL 拡張機能はありません。

#### WebGPU API

これは新しい API で、ユーザーの端末やコンピューターの GPU (Graphics Processing Unit) を使用して、計算やグラフィックのレンダリングを行うための低レベルのサポートを提供します。この仕様はまだ完成していません。この API の進捗状況については、 Firefox バグ 1602129 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 73 | No |
| Developer Edition | 73 | No |
| Beta | 73 | No |
| Release | 73 | No |
| Preference name | `dom.webgpu.enabled` |

### Audio Output API

#### MediaDevices.selectAudioOutput()

`MediaDevices.selectAudioOutput()` は、ユーザーが希望する音声出力を選択できるようにプロンプトを表示します。 Firefox バグ 1699026 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 88 | No |
| Developer Edition | 88 | No |
| Beta | 88 | No |
| Release | 88 | No |
| Preference name | `media.setsinkid.enabled` |

### WebRTC とメディア

WebRTC API、Web Audio API、Media Source Extensions API、Encrypted Media Extensions API (en-US)、Media Capture and Streams API にある以下の機能は実験的なものです。

非同期の SourceBuffer の追加と削除

これにより、メディアソースバッファを追加および削除するためのプロミスベースのメソッド `appendBufferAsync()` および `removeAsync()` が `SourceBuffer` インターフェイスに追加されます。詳細については、 Firefox バグ 1280613 および Firefox バグ 778617 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 62 | No |
| Developer Edition | 62 | No |
| Beta | 62 | No |
| Release | 62 | No |
| Preference name | `media.mediasource.experimental.enabled` |

#### AVIF 準拠の厳格性

`image.avif.compliance_strictness` 環境設定は AVIF 画像を処理するときに適用する *厳格性* を制御するために使うことができます。
 これにより、 Firefox ユーザーは、他のいくつかのブラウザーでレンダリングされる画像を、たとえ厳密に準拠していなくても表示することができます。

許可される値は以下の通りです。

* `0`: 推奨 (「should」言語) と要求 (「shall」言語) の両方で仕様違反のある画像でも、安全に、あるいは曖昧さを排除して解釈できるのであれば、受け付けます。
* `1` (デフォルト): 要件違反は却下し、勧告違反は許可する。
* `2`: 厳格。要件や推奨事項の違反は一切認めない。

| Release channel | Version added | Default value |
| --- | --- | --- |
| Nightly | 92 | 1 |
| Developer Edition | 92 | 1 |
| Beta | 92 | 1 |
| Release | 92 | 1 |
| Preference name | `image.avif.compliance_strictness` |

#### Android 版 Firefox の AV1 対応

Android 版 Firefox で、 AV1 形式のメディアを利用できるようになります。この機能は、 Android 版 Firefox 81 以降で有効な Nightly ビルドで利用できます。既定では有効になっています。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 81 | Yes |
| Developer Edition | — | — |
| Beta | — | — |
| Release | — | — |
| Preference name | — |

#### JPEG XL 対応

この機能を有効にすると、 Firefox は JPEG XL 画像に対応します。詳細は Firefox バグ 1539075 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 90 | No |
| Developer Edition | 90 | No |
| Beta | 90 | No |
| Release | — | — |
| Preference name | `image.jxl.enabled` |

#### Streams API: TransformStreams

変換ストリーム に対応し、クラス `TransformStream` と `TransformStreamDefaultController` およびメソッド `ReadableStream.pipeThrough()` を追加しました。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 101 | Yes |
| Developer Edition | 101 | No |
| Beta | 101 | No |
| Release | — | — |
| Preference name | `dom.streams.transform_streams.enabled` |

### サービスワーカー

#### ナビゲーション時のサービスワーカーリソースの先読み

`NavigationPreloadManager` インターフェイスを使用すると、ページに移動するときにリソースの先読みを有効にすることができます。
 先読みはワーカーの起動と並行して行われ、ナビゲーションの開始からリソースがフェッチされるまでの合計時間を短縮します。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 99 | yes |
| Developer Edition | 97 | No |
| Beta | 97 | No |
| Release | 97 | No |
| Preference name | `dom.serviceWorkers.navigationPreload.enabled` |

### WebVR API

#### WebVR API （無効化）

 非推奨化された WebVR API は削除途上にあります。
 これは既定ですべてのビルドで無効化されています Firefox バグ 1750902。

| Release channel | Version removed | Enabled by default? |
| --- | --- | --- |
| Nightly | 98 | No |
| Developer Edition | 98 | No |
| Beta | 98 | No |
| Release | 98 | No |
| Preference name | `dom.vr.enabled` |

### HTML DOM API

#### HTMLMediaElement の setSinkId() メソッド

`HTMLMediaElement.setSinkId()` は、 `HTMLMediaElement` に音声出力機器のシンク ID を設定することで、音声の出力先を変更することができます。詳細は Firefox バグ 934425 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 64 | No |
| Developer Edition | 64 | No |
| Beta | 64 | No |
| Release | 64 | No |
| Preference name | `media.setsinkid.enabled` |

#### HTMLMediaElement の audioTracks および videoTracks プロパティ

この機能を有効にすると、 HTML のすべてのメディア要素に `HTMLMediaElement.audioTracks` および `HTMLMediaElement.videoTracks` プロパティが追加されます。しかし、 Firefox は現在、複数の音声トラックや動画トラックに対応していないため、これらのプロパティの最も一般的な使用例は機能せず、既定では両方とも無効になっています。詳細については Firefox バグ 1057233 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 33 | No |
| Developer Edition | 33 | No |
| Beta | 33 | No |
| Release | 33 | No |
| Preference name | `media.track.enabled` |

#### ClipboardItem

`Clipboard API` の `ClipboardItem` インターフェイスに対応し、 `Clipboard.write()` は`クリップボードアイテム`の並びを、以前に実装されていた `dataTransfer オブジェクト` の代わりに受け入れます。これは、以前は `dom.events.asyncClipboard.dataTransfer` であった `dom.events.asyncClipboard.clipboardItem` を設定することで利用可能です。詳細については、 Firefox バグ 1619947 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 87 | No |
| Developer Edition | 87 | No |
| Beta | 87 | No |
| Release | 87 | No |
| Preference name | `dom.events.asyncClipboard.clipboardItem` |

#### ClipboardRead

クリップボードインターフェイスの Clipboard.read() メソッドは、以前は `dom.events.asyncClipboard.clipboardItem` の下にあったものが、 `dom.events.asyncClipboard.read` の環境設定の下でも利用できるようになりました。(詳細は (Firefox バグ 1701512) を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 90 | No |
| Developer Edition | 90 | No |
| Beta | 90 | No |
| Release | 90 | No |
| Preference name | `dom.events.asyncClipboard.read` |

#### HTML Sanitizer API

`HTML Sanitizer API` は、開発者が信頼できない HTML 文字列を受け取り、文書の DOM に安全に挿入するためにそれらをサニタイズすることを可能にします。各設定プロパティ内の既定の要素 (サニタイズされる要素) はまだ検討中です。このため、 config 引数は実装されていません (詳しくはコンストラクター (en-US)を参照してください)。詳細は、 Firefox バグ 1673309 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 84 | No |
| Developer Edition | 84 | No |
| Beta | 84 | No |
| Release | 84 | No |
| Preference name | `dom.security.sanitizer.enabled` |

#### Document の autoplayPolicy プロパティ

`document` の `autoplayPolicy` プロパティは、 (メディア要素の `autoplay` プロパティを使用するか、または JavaScript コードから再生を開始させようとする) メディアの自動再生のリクエストをブラウザーがどのように処理するかを示す文字列を返します。この API の仕様はまだ作成中です。この値は、ユーザーが何をしているか、ユーザーの好み、およびブラウザ全体の状態に応じて、時間とともに変化します。想定される値としては、 `allowed` (自動再生は現在許可されている)、 `allowed-muted` (自動再生は許可されているが、音声がないかミュートされている場合のみ)、`disallowed` (自動再生は現在許可されていない) などがあります。詳細は、 Firefox バグ 1506289 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 66 | No |
| Developer Edition | 66 | No |
| Beta | 66 | No |
| Release | 66 | No |
| Preference name | `dom.media.autoplay.autoplay-policy-api` |

#### GeometryUtils の convertPointFromNode(), convertRectFromNode(), convertQuadFromNode() メソッド

`GeometryUtils` の `convertPointFromNode()`、`convertRectFromNode()`、`convertQuadFromNode()` の各メソッドは、指定された点、矩形、または四角形を、呼び出されたノードから別のノードにマッピングします。 (詳細は Firefox バグ 918189 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 31 | Yes |
| Developer Edition | 31 | No |
| Beta | 31 | No |
| Release | 31 | No |
| Preference name | `layout.css.getBoxQuads.enabled` |

#### GeometryUtils の getBoxQuads() メソッド

`GeometryUtils` の `getBoxQuads()` メソッドは、他のノードやビューポートとの相対的な `Node` の CSS ボックスを返します。(詳細は Firefox バグ 917755 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 31 | Yes |
| Developer Edition | 31 | No |
| Beta | 31 | No |
| Release | 31 | No |
| Preference name | `layout.css.convertFromNode.enable` |

#### ElementInternals: フォームに関連するカスタム要素のメソッドとプロパティ

新しい `ElementInternals` プロパティとメソッドで、カスタム要素がフォームと相互作用できるようにします。

* `form` プロパティは要素に関連付けられたフォームを取得します。
* `labels` プロパティは要素に関連付けられたラベルのリストを取得します。
* `willValidate` (en-US) プロパティははカスタムフォーム要素が検証されるかどうかをチェックします。
* `setFormValue()` メソッドは、必要に応じてサニタイズ値とユーザー入力データをセットします。

詳しくはこれらのバグを参照してください。Firefox バグ 1556362, Firefox バグ 1556373, Firefox バグ 1556365, Firefox バグ 1556449 をご覧下さい。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 95 | Yes |
| Developer Edition | 95 | No |
| Beta | 95 | No |
| Release | 95 | No |
| Preference name | `dom.webcomponents.formAssociatedCustomElement.enabled` |

### 支払いリクエスト API

#### 主要な支払いの扱い

支払いリクエスト API は、ウェブコンテンツやアプリ内でウェブベースの支払いを処理するためのサポートを提供します。ユーザーインターフェイスのテスト中にバグが発生したため、 API の変更を検討している間、この API の出荷を延期することにしました。作業は継続中です。(詳細は Firefox バグ 1318984 をご参照ください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 55 | No |
| Developer Edition | 55 | No |
| Beta | 55 | No |
| Release | 55 | No |
| Preference name | `dom.payments.request.enabled` and`dom.payments.request.supportedRegions` |

### WebShare API

ウェブ共有 API は、サイトのファイル、URL、その他のデータを共有することができます。
 この機能は、 Android ではすべてのビルドで有効になっていますが、デスクトップでは（以下で指定されていない限り）設定で隠されています。

| Release channel | Version changed | Enabled by default? |
| --- | --- | --- |
| Nightly | 71 | No (default). Yes (Windows from version 92) |
| Developer Edition | 71 | No |
| Beta | 71 | No |
| Release | 71 | No (Desktop). Yes (Android). |
| Preference name | `dom.webshare.enabled` |

### Screen Orientation API

#### ScreenOrientation.lock()

`ScreenOrientation.lock()` メソッドは、端末が対応しており、ブラウザーの事前ロック要件で許可されていれば、端末を特定の向きにロックすることを可能にします。
 一般的に、向きのロックは、文書が全画面で表示されているモバイル端末でのみ許可されます。
 詳しくは Firefox バグ 1697647 を参照してください。

画面の向きをロックすることはデスクトップシステムでは通常サポートされていないため、Android 用の Firefox Nightly ビルドを使用して `about:config` で設定を有効にする必要があることに注意してください。

| Release channel | Version changed | Enabled by default? |
| --- | --- | --- |
| Nightly | 97 | No |
| Developer Edition | 97 | No |
| Beta | 97 | No |
| Release | 97 | No. |
| Preference name | `dom.screenorientation.allow-lock` |

セキュリティとプライバシー
-------------

### 暗号化されたページ上の Flash からのプレーンテキストのリクエストをブロックする

暗号化されたページ上の Flash コンテンツによって引き起こされる中間者攻撃 (MitM) を軽減するために、 `OBJECT_SUBREQUEST` をアクティブなコンテンツとして扱う設定が追加されました。詳細については、 Firefox バグ 1190623 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 59 | No |
| Developer Edition | 59 | No |
| Beta | 59 | No |
| Release | 59 | No |
| Preference name | `security.mixed_content.block_object_subrequest` |

### 安全でないページのラベル付け

この 2 つの環境設定では、安全でない方法でページが読み込まれた場合 (HTTPS ではなく HTTP を使用した場合) に、従来のロックアイコンの隣に「Not secure」というテキストラベルがアドレスバーに追加されます。詳細については、 Firefox バグ 1335970 を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 60 | No |
| Developer Edition | 60 | No |
| Beta | 60 | No |
| Release | 60 | No |
| Preference name | `security.insecure_connection_text.enabled` for normal
 browsing mode;
 `security.insecure_connection_text.pbmode.enabled` for
 private browsing mode
  |

### 混合表示コンテンツのアップグレード

この設定を有効にすると、 Firefox は安全なページでメディアコンテンツへの要求を HTTP から HTTPS に自動的にアップグレードします。これは、一部のコンテンツが安全に読み込まれる一方で、他のコンテンツが安全でないという混合コンテンツの状態を防ぐことを目的としています。(メディアのホストが HTTPS に対応していないために) アップグレードが失敗した場合、そのメディアは読み込まれません。(詳細については、 Firefox バグ 1435733 を参照してください。)

これはコンソールの警告も変更します。アップグレードが成功した場合、警告ではなく、リクエストがアップグレードされたことを示すメッセージを表示します。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 84 | Yes |
| Developer Edition | 60 | No |
| Beta | 60 | No |
| Release | 60 | No |
| Preference name | `security.mixed_content.upgrade_display_content` |

### 機能ポリシー

機能ポリシーは、ウェブ開発者がブラウザーの特定の機能や API の動作を選択的に有効化、無効化、変更することを可能にします。 CSP と似ていますが、セキュリティの動作ではなく機能を制御します。

**メモ:** `Feature-Policy` ヘッダーは、仕様書では `Permissions-Policy` に名称が変更されており、本記事もいずれその変更を反映して更新される予定です。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 65 | No |
| Developer Edition | 65 | No |
| Beta | 65 | No |
| Release | 65 | No |
| Preference name | `dom.security.featurePolicy.header.enabled` |

### Clear-Site-Data の "cache" ディレクティブ

`Clear-Site-Data` HTTP レスポンスヘッダーの `cache` ディレクティブは、リクエストしているウェブサイトのブラウザーキャッシュをクリアします。

**メモ:** これは元々既定で有効でしたが、バージョン 9 4で優先順位が付けられました (Firefox バグ 1729291)。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 63 | No |
| Developer Edition | 63 | No |
| Beta | 63 | No |
| Release | 63 | No |
| Preference name | `privacy.clearsitedata.cache.enabled` |

開発ツール
-----

Mozilla の開発者向けツールは常に進化しています。私たちは新しいアイディアを試し、新しい機能を追加し、Nightly や Developer Edition のチャンネルでテストしてから、ベータ版やリリースに移行しています。以下の機能は、現在の実験的な開発者ツールの機能の一部です。

### 実行コンテキストセレクター

この機能では、コンソールのコマンドラインにボタンが表示され、入力した式が実行されるコンテキストを変更することができます。(詳細は、 Firefox バグ 1605154 および Firefox バグ 1605153 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 75 | No |
| Developer Edition | 75 | No |
| Beta | 75 | No |
| Release | 75 | No |
| Preference name | `devtools.webconsole.input.context` |

### レスポンシブデザインモードでのモバイルジェスチャーのサポート

マウスジェスチャーを使用して、スワイプ/スクロール、ダブルタップやピンチズーム、長押しによるコンテキストメニューの選択/オープンなどのモバイルジェスチャーをシミュレートすることができます。 (詳細については Firefox バグ 1621781、Firefox バグ 1245183、Firefox バグ 1401304 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 76[1] | Yes |
| Developer Edition | 76[1] | Yes |
| Beta | 76[1] | Yes |
| Release | 76[1] | No |
| Preference name | n/a |

[1] ダブルタップのジェスチャーによるズームの対応は Firefox 76 で追加されました。他のジェスチャーは Firefox 79 で追加されました。

### ネットワークモニターにおけるサーバー送信イベント

ネットワークモニターがサーバー送信イベントについての情報を表示する機能です。 (詳細については Firefox バグ 1405706 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 80 | Yes |
| Developer Edition | 80 | Yes |
| Beta | 80 | No |
| Release | 80 | No |
| Preference name | `devtools.netmonitor.features.serverSentEvents` |

### CSS のブラウザー互換性ツールチップ

CSS ルールビューでは、既知の問題がある CSS プロパティの隣にブラウザーの互換性ツールチップを表示させることができます。詳しい情報は HTML の調査と編集 > ブラウザー互換性の警告を参照してください。

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 81 | No |
| Developer Edition | 81 | No |
| Beta | 81 | No |
| Release | 81 | No |
| Preference name | `devtools.inspector.ruleview.inline-compatibility-warning.enabled` |

UI
--

### デスクトップ版のズーム

この機能により、デスクトップ PC では、モバイル端末のようにレイアウトの変更をすることなく、スムーズなピンチズームが可能になります。(詳細は Firefox バグ 1245183 および Firefox バグ 1620055 を参照してください。)

| Release channel | Version added | Enabled by default? |
| --- | --- | --- |
| Nightly | 42 | Yes |
| Developer Edition | 42 | No |
| Beta | 42 | No |
| Release | 42 | No |
| Preference name | `apz.allow_zooming` and (on Windows)
 `apz.windows.use_direct_manipulation` |

関連情報
----

* Firefox 開発者リリースノート
* Firefox Nightly
* Firefox Developer Edition


Firefox 13 for developers - Mozilla

Firefox 13 for developers
=========================

Firefox 13 は 米国時間 2012 年 6 月 5 日にリリースされました。この記事は開発者に影響がある Firefox 13 での変更点をまとめています。

Web 開発者向けの変更点一覧
---------------

### HTML

* テーブルの `cellspacing` 属性は、Quirks モード以外でも Quirks モードと同様に解析するようになりました。これは値をパーセント値で指定した場合に、仕様書で実際はパーセント値が認められていないため代わりにピクセル数として扱うものです。
* `<wbr>` 要素の双方向テキストに関する動作を修正しました。Unicode の `U+200B ZERO-WIDTH SPACE` 文字と同様の動作になり、従って親要素の双方向性に影響を与えません。
* `:invalid` 疑似クラスを `<form>` 要素へ適用できるようになりました。
### CSS

* `<angle>` の単位 `turn` をサポートしました (`rotate()` などの CSS 関数で用います)。
* `background-position` で値を 3 - 4 個置く構文をサポートしました。"`right 10px bottom 20px`" といった表記で、背景画像を任意の角からずらすことができます。Firefox バグ 522607 をご覧ください。
* `background-repeat` で値を 2 個置く構文をサポートしました。
* `-moz-border-radius*` および `-moz-box-shadow` のサポートを削除しました。代わりに著作者は接頭辞のない `border-radius` または `box-shadow` を使用してください。Firefox バグ 693510 をご覧ください。
* `column-fill` プロパティが実装されました。（接頭辞付き）
### JavaScript

* ECMAScript 6 の `for..of` 構造をサポートしました。
* ECMAScript 6 の `Map` と `Set` オブジェクトの実験的サポートを実装しました。
### DOM

* DOM4 の規定により、`Node.cloneNode()` メソッドの引数 `deep` は省略可能になりました。
* `window.setTimeout()` および `window.setInterval()` メソッドは、付加的な引数である "遅延" をコールバックルーチンに渡さないようになりました。
* `Blob.mozSlice()` メソッドの接頭辞を削除しました。
* `Blob` コンストラクタをサポートしました。
* `globalStorage` のサポートを削除しました。
* バックグラウンドの処理の状態や結果を報告するために用いる `DOMRequest` インタフェースを新たに追加しました。
* `HTMLOptionElement.index()` メソッドは、`<option>` が `<datalist>` HTML 要素の内部にあるときに誤った値 `-1` ではなく `0` を返すようになりました。
* `DOMException` のうち DOM Level 4 で定義された部分を実装しました。
* 最新の File API 仕様での `DOMError` の定義に賛同して、`FileError` インタフェースを削除しました。
* `Range` オブジェクトは `RangeException` 例外を投げなくなりました。代わりに DOM4 で定義された `DOMException` を用います。
* `element.getAttributeNS()` は存在しない属性について空の文字列に代わり常に `null` を返すようになりました。以前は、空の文字列が返る場合がありました。存在しない属性には空の文字列ではなく null を返すべきであるという現在の DOM4 仕様に従います。
* `HTMLCanvasElement` インタフェースに非標準の `mozFetchAsStream()` メソッドを追加しました。これは当該要素の画像データを指定した形式で含む入力ストリームを提供します。
### UA 文字列

* Android 版 Firefox は、フォームファクタを示すため UserAgent 文字列に Tablet または Mobile のトークンを含むようになり、Fennec トークンは持たなくなりました。また "Gecko/" に続く数値は、フリーズした日付から Gecko のバージョン番号に変わります。
* UA 文字列では、Gecko のパッチ番号やリリース状況をバージョン番号で公開しないようになりました。バージョン番号は常に "X.Y" という形式になり、X はメジャーリリース番号、Y はマイナー番号を表します。例えば、"13.0" や "14.1" となります。"14.0.1b1" のようにはなりません。
### SVG

* `SVGStringList` DOM インタフェースが `Array` と同様に添字を利用可能になりました。Firefox バグ 722071 をご覧ください。
### WebGL

* `EXT_texture_filter_anisotropic` 拡張のサポートを追加しました。異方性テクスチャフィルタリングは、テクスチャが貼り付けられた斜めのプリミティブを表示する際のミップマップテクスチャのアクセスの品質を向上させます。
### MathML

* `<mtable>` 要素で `width` 属性をサポートしました (Firefox バグ 722880)。
* 数学的なテキストで MathJax fonts をデフォルトフォントとして使用するようになりました。詳しくは Fonts for Mozilla's MathML engine をご覧ください。
### Developer tools

#### 3D ビューの改良

* "f" キーを押すと、選択中のノードが見えるように位置を調整することができます。

#### スタイルパネルの改良

* スタイルパネル でルールの見出しをクリックすると、対応する CSS を スタイルエディタ で開くようになりました。
* スタイルパネル でルールを右クリックすると、そのルールをクリップボードへコピーできるようになりました。
* 未知のプロパティ名や誤った値を入力すると、プロパティの隣に警告アイコンを表示します。

#### スクラッチパッドの改良

* スクラッチパッド のヘルプメニューに、MDN のスクラッチパッドに関する文書を開くための項目を追加しました。
Mozilla 開発者とアドオン開発者向けの変更点
-------------------------

### 互換性情報

Firefox 13 より、Windows 版の Firefox は Windows XP Service Pack 2 以降を要求します。従って、 Windows 2000 や古いバージョンの Windows XP では動作しません。

### JavaScript code modules

#### source-editor.jsm

* ソースエディタの API に、ダーティフラグのサポートを追加しました。
* ソースエディタは、Orion を利用せずに `<textarea>` へフォールバックする動作をサポートしなくなりました。
* エディタが focus と blue のイベントを公開するようになりました。
* `getIndentationString()` メソッドを追加しました。これは、エディタでテキストのインデントに使用する文字を返します。
* ソースエディタで、ブレークポイントのリストの管理とブレークポイントのオン・オフを切り替えるユーザインタフェースの表示をサポートしました。ただし実際は、ブレークポイントを実装していません。そのためのデバッガのコードを記述するのはあなた次第です。
* `highlightCurrentLine` 設定オプションを用いて、カレント行をハイライトする機能をサポートしました。
### ARIA

* CSS プロパティ `margin-left`、`margin-right`、`margin-top`、および `margin-bottom` はすべて、同じ名前で ARIA オブジェクトに反映されます。詳しくは Gecko object attributes をご覧ください。
### インタフェースの変更

* `nsIScreen` インタフェースが、新たに引数 `rotation` を通して回転の制御をサポートしました。
* `nsIPrefBranch2` インタフェースを `nsIPrefBranch` に統合しました (Firefox バグ 718255)。
* 以前のバージョンの Gecko で削除されたエイリアス `MozOpacity`、`MozOutline`、`MozOutlineStyle`、`MozOutlineWidth`、`MozOutlineOffset`、および `MozOutlineColor` を、`nsIDOMCSS2Properties` から削除しました。これは、エイリアスを削除した当初に行うべきでした。
* `nsINavHistoryQueryOptions` の属性 `excludeItemIfParentHasAnnotation` を、対応するクエリ操作と共に削除しました。これはライブブックマークのサポート用に存在しましたが、もはや存在しません。
関連記事
----

* Firefox 12 for developers
* Firefox 11 for developers
* Firefox 10 for developers
* Firefox 9 for developers
* Firefox 8 for developers
* Firefox 7 for developers
* Firefox 6 for developers
* Firefox 5 for developers
* Firefox 4 for developers
* Firefox 3.6 for developers
* Firefox 3.5 for developers
* Firefox 3 for developers
* Firefox 2 for developers
* Firefox 1.5 for developers


Firefox 58 for developers - Mozilla

Firefox 58 for developers
=========================

Firefox 58 は、米国時間 2018 年 1 月 23 日にリリースされました。このページでは、開発者に影響する Firefox 58 の変更点をまとめています。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

* `clip-path` で生成したシェイプ用の シェイプパスエディター を、既定で有効にしました (Firefox バグ 1405339)。
* ネットワークモニター に、ネットワーク通信の記録を停止/再開する ボタンを追加しました (Firefox バグ 1005755)。
* ネットワークモニター で "Flash" フィルターボタンが使用できなくなりました。Flash の要求は "その他" フィルターに含まれます (Firefox バグ 1413540)。
* 古いレスポンシブデザインモード (Firefox 52 より前のバージョンで、デフォルトで有効でした) のコードを、開発ツールから削除しました (Firefox バグ 1305777)。新しいツールの情報は レスポンシブデザインモード で確認してください。
* ページインスペクターの CSS ペインから、MDN のドキュメントを参照する機能を削除しました (バージョン 55 から無効化していました。Firefox バグ 1382171)。
### HTML

*変更なし。*

### CSS

* `font-display` ディスクリプターを、すべてのプラットフォームにおいてデフォルトで有効にしました (Firefox バグ 1317445)。
### SVG

*変更なし。*

### JavaScript

* `Promise.prototype.finally()` メソッドを実装しました (Firefox バグ 1019116)。
* `Intl.PluralRules` オブジェクトを実装しました (Firefox バグ 1403318)。
* `Intl.NumberFormat.prototype.formatToParts()` メソッドを実装しました (Firefox バグ 1403319)。
* `Intl.DateTimeFormat` オブジェクトで `hourCycle` オプションと `hc` 言語タグをサポートしました (Firefox バグ 1386146)。
* optional catch binding 提案 を実装しました (Firefox バグ 1380881)。
### API

#### 新規 API

* `PerformanceNavigationTiming` API を実装しました (Firefox バグ 1263722)。
    + 必要に応じてこのインターフェイスを無効化できる設定項目 `dom.enable_performance_navigation_timing` (既定値は `true`) を Gecko に追加しました (Firefox バグ 1403926)。

#### DOM

* いくつかの API において、error オブジェクトで報告されるエラー (例えば `FileReader`、`IDBRequest`、`IDBTransaction` の `error` プロパティや、`RTCPeerConnection` で一定の方法によるリクエストが成功しなかったとき) が、`DOMException` のインスタンスになりました。`DOMError` は非推奨になり、DOM4 仕様書から削除されました (Firefox バグ 1120178)。
* WebVR API を、macOS でデフォルトで有効にしました (Firefox バグ 1374399)。
* `PerformanceResourceTiming.workerStart` プロパティをサポートしました (Firefox バグ 1191943)。
* バジェットベースのバックグラウンドタイムアウト調節を実装しました。詳しくは Policies in place to aid background page performance をご覧ください (Firefox バグ 1377766)。

#### DOM イベント

*変更なし。*

#### メディアと WebRTC

* 接頭辞付きの `HTMLMediaElement.srcObject` を削除しました。`mozSrcObject` の代わりに標準の `srcObject` を使用するように、コードを更新してください (Firefox バグ 1183495)。
* `getUserMedia()` を使用して取得したストリームにトラックを追加するために `MediaStream.addTrack()` を使用して、その結果のストリームを記録しようとすると、期待どおりに動作するようになりました。以前は、`getUserMedia()` が返したストリームに元から含まれていたトラックだけが、記録したメディアに含まれていました (Firefox バグ 1296531)。
* WebVTT の `VTTRegion` インターフェイスは WebVTT ファイルを解釈するときに常に作成されていましたが、以前はその結果の領域が使用されませんでした。Firefox 58 より、設定項目 `media.webvtt.regions.enabled` の値を `true` に設定すると、領域を使用するようになりました。

#### Canvas と WebGL

* 接頭辞つき WebGL 拡張のサポートを廃止しました (Firefox バグ 1403413):
    + `MOZ_WEBGL_compressed_texture_atc` の代わりに `WEBGL_compressed_texture_atc` を使用してください。
    + `MOZ_WEBGL_compressed_texture_pvrtc` の代わりに `WEBGL_compressed_texture_pvrtc` (en-US) を使用してください。
    + `MOZ_WEBGL_compressed_texture_s3tc` の代わりに `WEBGL_compressed_texture_s3tc` (en-US) を使用してください。
    + `MOZ_WEBGL_depth_texture` の代わりに `WEBGL_depth_texture` (en-US) を使用してください。
    + `MOZ_WEBGL_lose_context` の代わりに `WEBGL_lose_context` (en-US) を使用してください。
### HTTP

* `Content-Security-Policy-Report-Only` で `frame-ancestors` を無視しないようになりました (Firefox バグ 1380755)。
* TLS ハンドシェイクのタイムアウトを Firefox に実装しました。既定値は 30 秒です。タイムアウト時間は、about:config の設定項目 `network.http.tls-handshake-timeout` で変更できます (Firefox バグ 1393691)。
* `worker-src` CSP ディレクティブを実装しました (Firefox バグ 1302667)。
### セキュリティ

*変更なし。*

### プラグイン

*変更なし。*

### その他

* プログレッシブ ウェブアプリ の取り組みの一環として、Android 版 Firefox で "ホーム画面に追加" をサポートしました (Firefox バグ 1212648)。
* WebAssembly に、読み込み時間を最適化する階層型コンパイラー (Firefox バグ 1277562) と、新たなストリーミング API (`WebAssembly.compileStreaming()` および `WebAssembly.installStreaming()`) を搭載しました (Firefox バグ 1347644)。
ウェブプラットフォームから廃止
---------------

### HTML

* ホットスポット領域を作成するために、`<map>` 要素の内部に `<a>` 要素を入れ子にすることができなくなりました。代わりに `<area>` 要素を使用しなければなりません (Firefox バグ 1317937)。
### CSS

* Mozilla 独自仕様である以下の system metric 疑似クラスが、ウェブコンテンツで使用できなくなりました (Firefox バグ 1396066):
    + `:-moz-system-metric(images-in-menus)`
    + `:-moz-system-metric(mac-graphite-theme)`
    + `:-moz-system-metric(scrollbar-end-backward)`
    + `:-moz-system-metric(scrollbar-end-forward)`
    + `:-moz-system-metric(scrollbar-start-backward)`
    + `:-moz-system-metric(scrollbar-start-forward)`
    + `:-moz-system-metric(scrollbar-thumb-proportional)`
    + `:-moz-system-metric(touch-enabled)`
    + `:-moz-system-metric(windows-default-theme)`
* Mozilla 独自仕様である以下の media feature が、ウェブコンテンツで使用できなくなりました (Firefox バグ 1396066):
    + `-moz-color-picker-available`
    + `-moz-is-glyph`
    + `-moz-mac-graphite-theme`
    + `-moz-mac-yosemite-theme`
    + `-moz-os-version`
    + `-moz-overlay-scrollbars`
    + `-moz-physical-home-button`
    + `-moz-scrollbar-end-backward`
    + `-moz-scrollbar-end-forward`
    + `-moz-scrollbar-start-backward`
    + `-moz-scrollbar-start-forward`
    + `-moz-scrollbar-thumb-proportional`
    + `-moz-swipe-animation-enabled`
    + `-moz-windows-accent-color-in-titlebar`
    + `-moz-windows-classic`
    + `-moz-windows-compositor`
    + `-moz-windows-default-theme`
    + `-moz-windows-glass`
    + `-moz-windows-theme`
* Mozilla 独自仕様である `:-moz-styleeditor-transitioning` 疑似クラスが、ウェブコンテンツで使用できなくなりました (Firefox バグ 1396099)。
### JavaScript

* 非標準の `Date.prototype.toLocaleFormat()` メソッドを削除しました (Firefox バグ 818634)。詳細および移行方法について、Warning: Date.prototype.toLocaleFormat is deprecated をご覧ください。
* 非標準および非推奨の `Object.prototype.watch()` および `unwatch()` メソッドを削除しました。今後は動作しません (Firefox バグ 638054)。代わりに setters および getters または proxy の使用を検討してください。
* レガシーイテレータープロトコル、`StopIteration` オブジェクト、レガシージェネレーター関数 (en-US)、非標準の `Function.prototype.isGenerator()` メソッドを削除しました。代わりに ES2015 の 反復処理プロトコル や、標準準拠の イテレーターとジェネレーター を使用してください (Firefox バグ 1083482, Firefox バグ 1413867, Firefox バグ 1119777)。
* 非標準の 配列内包 (en-US) および ジェネレーター内包 (en-US) を削除しました (Firefox バグ 1414340)。
### API

* `XMLHttpRequest.responseType` プロパティの独自仕様の値である `moz-blob` および `moz-chunked-text` を、Firefox 58 で完全に削除しました (Firefox バグ 1397145, Firefox バグ 1397151, Firefox バグ 1120171)。
* Abort API の機能 を制御する設定項目である `dom.abortController.enabled` および `dom.abortController.fetch.enabled` を削除しました (Firefox バグ 1402317)。デフォルトで有効化したためです。
* 独自仕様である `mozSrcObject` プロパティを Firefox 58 で削除しました (Firefox バグ 1183495)。代わりに、標準の `HTMLMediaElement.srcObject` プロパティを使用してください。
### SVG

*変更なし。*

アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### WebExtensions

* browserSettings
    + browserSettings.webNotificationsDisabled (en-US) を実装しました (Firefox バグ 1364942)
* browsingData
    + browsingData.localStorage (en-US) で、ホストによる localStorage の削除をサポートしました (Firefox バグ 1388428)
* セキュリティデバイスを管理するための pkcs11 API をサポートしました (Firefox バグ 1357391)
* プライバシー
    + firstPartyIsolate で、ファーストパーティー分離の切り替えが可能になりました (Firefox バグ 1409045)
    + resistFingerprinting で、フィンガープリンティング対策の設定の切り替えが可能になりました (Firefox バグ 1397611)
* タブ
    + tabs.discard (en-US) を実装しました (Firefox バグ 1322485)
    + タブの isArticle、isInReaderMode プロパティを実装しました (Firefox バグ 1381992)
    + toggleReaderMode (en-US)() メソッドを実装しました (Firefox バグ 1381992)
    + tabs.created の openInReaderMode オプションを実装しました (Firefox バグ 1408993)
    + tabs.onUpdated が、リーダービューを出入りするときに通知を発するようになりました (Firefox バグ 1402921)
* テーマ
    + 現在のテーマの属性を取得するための getCurrent (en-US)() メソッドをサポートしました (Firefox バグ 1349944)
    + WebExtension のテーマの更新を受け取る onUpdated メソッドをサポートしました (Firefox バグ 1349944)
    + colors.toolbar\_text の別名として colors.bookmark\_text をサポートしました (Firefox バグ 1412595)
    + colors.toolbar\_top\_separator、colors.toolbar\_bottom\_separator、colors.toolbar\_vertical\_separator を実装しました (Firefox バグ 1347190)
* webRequest
    + webRequest.onBeforeRequest (en-US) が "frameAncestors" パラメーターを持つようになりました
関連情報
----

* Firefox — Notes (58.0)

過去のバージョン
--------

* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers
* Firefox 43 for developers
* Firefox 42 for developers
* Firefox 41 for developers
* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers
* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers
* Firefox 33 for developers
* Firefox 32 for developers
* Firefox 31 for developers
* Firefox 30 for developers
* Firefox 29 for developers
* Firefox 28 for developers
* Firefox 27 for developers


Firefox 108 for developers - Mozilla

Firefox 108 for developers
==========================

このページでは、開発者に影響する Firefox 108 の変更点をまとめています。Firefox 108 は、2022 年 12 月 13 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### HTML

* `<source>` 要素で、`<picture>` 要素の子要素であるときに `height` および `width` 属性をサポートしました。
 この機能は設定項目 `dom.picture_source_dimension_attributes.enabled` で制御しており、既定値を `true` にしました (Firefox バグ 1795953)。
### CSS

* 設定項目 `layout.css.trig.enabled` の既定値を `true` に設定して、三角関数 が使用可能になりました。
 `sin()`、`cos()`、`tan()`、`asin()`、`acos()`、`atan()`、`atan2()` 関数を使用できます (Firefox バグ 1774589、Firefox バグ 1787070)。
* 数学関数 で `pi` や `e` のようなよく知られた定数を使用できるようにするため、CSS の `<calc-constant>` (en-US) 型を実装しました (Firefox バグ 1682444、Firefox バグ 1787070)。
* 設定項目 `layout.css.container-queries.enabled` で、コンテナークエリーの長さの単位をサポートしました。
 この設定を `true` にすると、クエリーコンテナーの寸法に比例する長さの単位である`cqw`、`cqh`、`cqi`、`cqb`、`cqmin`、`cqmax` を使用できます。
 これらの単位について、詳しくは CSS Container Queries の文書をご覧ください (Firefox バグ 1744231)。
* 設定項目 `layout.css.font-variant-emoji.enabled` で、`font-variant-emoji` (en-US) プロパティをサポートしました。設定項目の既定値は `false` です。このプロパティで、絵文字を表示するときの既定の表現スタイルを設定できます (Firefox バグ 1461589)。
### JavaScript

変更なし。

### HTTP

* `Content-Security-Policy` HTTP ヘッダーの `style-src-elem` および `style-src-attr` ディレクティブをサポートしました。
 サーバーはそれぞれのディレクティブを使用して、`<style>` 要素や `rel="stylesheet"` を持つ `<link>` 要素のスタイルシート、および個々の要素に適用するスタイルの正当な提供元を指定できます (Firefox バグ 1529338)。
* `Content-Security-Policy` HTTP ヘッダーの `script-src-elem` および `script-src-attr` ディレクティブをサポートしました。
 サーバーはそれぞれのディレクティブを使用して、`<script>` 要素の JavaScript、および `onclick` などのイベントハンドラーのインラインスクリプトの正当な提供元を指定できます (Firefox バグ 1529337)。
* `Content-Security-Policy` の違反内容の報告が、`effective-directive` および `status-code` プロパティを含むようになりました。
 詳しくは 違反内容の報告の構文 をご覧ください (Firefox バグ 1192684)。
### API

* Import maps をサポートしました。
 Import maps は、JavaScript モジュール をインポートするときにブラウザーがモジュール指定子を解決する方法に柔軟性や追加の制御手段を提供するものです (Firefox バグ 1795647)。

#### Media、WebRTC、Web Audio

* Web MIDI API が、安全なコンテキスト で使用可能になりました。
 `navigator.requestMIDIAccess()` を呼び出すとアクティブな MIDI デバイスを持つユーザーに対して、API を有効にするために必要な Site Permission Add-On のインストールを促します。
 詳しくは Firefox バグ 1795025 をご覧ください。
### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* 仕様書の変更 に従って、ログ項目のレベル `"warning"` を `"warn"` に改名しました (Firefox バグ 1797115)。
* 名前が空文字列であるサンドボックスとともに `script.evaluate` および `script.callFunction` を使用するとき、既定のレルムを使用して評価するようになりました (Firefox バグ 1793589)。
* `browsingContext.domContentLoaded` イベントをサポートしました (Firefox バグ 1756610)。

#### Marionette

* `WebDriver:PerformActions` のために、ポインターアクションの `tiltX`、`tiltY`、`twist` プロパティをサポートしました (Firefox バグ 1793832)。
* `WebDriver:GetElementText` が、整形された XML の要素のテキストを返さない不具合を修正しました (Firefox バグ 1794099)。
* `HTMLDocument` を、`WebElement` の参照としてシリアライズしないようになりました (Firefox バグ 1793920)。
* `WebDriver:NewWindow` が、`about:newtab` ではなく `about:blank` のタブを持つウィンドウを開くようになりました (Firefox バグ 1533058)。
アドオン開発者向けの変更点一覧
---------------

* バージョン番号 が推奨するフォーマットに従っていない拡張機能がインストールされているときに、Firefox が警告を表示するようになりました (Firefox バグ 1793925)。
過去のバージョン
--------

* Firefox 107 for developers
* Firefox 106 for developers
* Firefox 105 for developers
* Firefox 104 for developers
* Firefox 103 for developers
* Firefox 102 for developers
* Firefox 101 for developers
* Firefox 100 for developers
* Firefox 99 for developers
* Firefox 98 for developers
* Firefox 97 for developers
* Firefox 96 for developers
* Firefox 95 for developers
* Firefox 94 for developers
* Firefox 93 for developers
* Firefox 92 for developers
* Firefox 91 for developers
* Firefox 90 for developers
* Firefox 89 for developers
* Firefox 88 for developers
* Firefox 87 for developers
* Firefox 86 for developers
* Firefox 85 for developers
* Firefox 84 for developers
* Firefox 83 for developers
* Firefox 82 for developers
* Firefox 81 for developers
* Firefox 80 for developers
* Firefox 79 for developers
* Firefox 78 for developers
* Firefox 77 for developers


Firefox 80 for developers - Mozilla

Firefox 80 for developers
=========================

このページでは、開発者に影響する Firefox 80 の変更点をまとめています。Firefox 80 は、2020 年 8 月 25 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

* ウェブコンソールの ヘルパーコマンド `:block` および `:unblock` を使用して、ネットワーク要求をブロックおよびブロック解除できるようになりました (Firefox バグ 1546394)。
* ページインスペクターのルールペインで要素に クラスを追加 するとき、既存のクラスをオートコンプリートで提案するようになりました (Firefox バグ 1492797)。
* デバッガーが 例外でブレークするとき、ソースペインのツールチップでスタックトレースを展開するための三角印を表示するようになりました (Firefox バグ 1643633)。
* ネットワークモニターの要求リスト で、待ち時間のしきい値 (設定可能) を超える "遅い" 要求に亀のアイコンを表示するようになりました (Firefox バグ 1648373)。
### HTML

*変更なし。*

#### 廃止

### CSS

* 標準化されて接頭辞がない `appearance` プロパティをサポートしました。既存の `-moz-appearance` および `-webkit-appearance` は、接頭辞がないプロパティの別名になります (Firefox バグ 1620467)。

#### 廃止

### JavaScript

* ECMAScript 2021 の、`export` 文の `export * as namespace` 構文をサポートしました (Firefox バグ 1496852)。
### HTTP

* 以前は `<iframe>` に (`allow` 属性で) fullscreen ディレクティブが適用されていたとき、`allowfullscreen` 属性も与えていなければ動作しませんでした。この問題を修正しました (Firefox バグ 1608358)。
### API

#### DOM

* Web Animations API の合成操作をサポートしました。`KeyframeEffect.composite` (en-US) および `KeyframeEffect.iterationComposite` (en-US) をご覧ください (Firefox バグ 1652676)。

#### Media、WebRTC、Web Audio

* Media Session API で `seekto` アクション (en-US) をサポートしました。コードが再生中のメディアの指定した時間へシークすることを、メディアコントロールが要求できるようにします (Firefox バグ 1621403)。
* Media Session API で `skipad` アクション (en-US) もサポートしました。スキップ機能が存在して、ユーザーのサブスクリプションや権限のレベルで許可されていれば、広告コンテンツをスキップしてメインのメディアコンテンツの再生を継続します (Firefox バグ 1582569)。

#### WebGL

* WebGL 拡張 の `KHR_parallel_shader_compile` (en-US) をサポートしました (Firefox バグ 1536674)。

#### 廃止

* `Window.open()` の`outerHeight` および `outerWidth` 機能を、ウェブコンテンツに公開しないようになりました (Firefox バグ 1623826)。
### WebAssembly

* Atomic 操作を、非共有メモリーで許可しました (Firefox バグ 1619196)。
### WebDriver conformance (Marionette)

* ヘッドレスモードでテストを実行するとき、新しいタブを開くために `WebDriver:NewWindow` を使用すると戻るのが早すぎる問題を修正しました (Firefox バグ 1653281)。
* `WebDriver:SwitchToWindow` から引数 `name` を削除しました。これは W3C 準拠モードでサポートされておらず、使用するべきではありません (Firefox バグ 1588424)。
* 以下のコマンドで Fission のサポートを始めました: `WebDriver:FindElement`、`WebDriver:FindElements`、`WebDriver:GetElementAttribute`、`WebDriver:GetElementProperty`。
* **既知の問題**: `WebDriver:NewWindow` を使用するか、`window.open()` を呼び出す任意のスクリプトで新しいをタブを開くと、自動的に新しいウィンドウに切り替わります (Firefox バグ 1661495)。
アドオン開発者向けの変更点
-------------

*変更なし。*

#### 廃止

過去のバージョン
--------

* Firefox 79 for developers
* Firefox 78 for developers
* Firefox 77 for developers
* Firefox 76 for developers
* Firefox 75 for developers
* Firefox 74 for developers
* Firefox 73 for developers
* Firefox 72 for developers
* Firefox 71 for developers
* Firefox 70 for developers
* Firefox 69 for developers
* Firefox 68 for developers
* Firefox 67 for developers
* Firefox 66 for developers
* Firefox 65 for developers
* Firefox 64 for developers
* Firefox 63 for developers
* Firefox 62 for developers
* Firefox 61 for developers
* Firefox 60 for developers
* Firefox 59 for developers
* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers


Firefox 69 for developers - Mozilla

Firefox 69 for developers
=========================

Firefox 69 は、米国時間 2019 年 9 月 3 日 にリリースされました。このページでは、開発者に影響する Firefox 69 の変更点をまとめています。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

#### デバッガー

* イベントリスナーブレークポイント で、ブラウザーのイベントに対してどのコードを実行したかを分析できます。`click` や `keydown` など特定の型、あるいはすべてのマウス入力イベントのようにイベントのカテゴリー全体を選択できます (Firefox バグ 1526082)。
* デバッガーの ソースリストペイン に表示しているスクリプトを、コンテキストメニューの *ファイルをダウンロード* で保存できるようになりました (Firefox バグ 888161)。
* デバッガーのソースリストペインで、拡張機能が UUID に代わって拡張機能の名前で表示されるようになりました (Firefox バグ 1486416)。デバッグしたい拡張機能のコードを見つけやすくなります。
* スクリプトの読み込みを遅延させることで、デバッガーの起動がかなり早くなりました (Firefox バグ 1527488)。

#### コンソール

* リソースやストレージへのアクセスが何度もブロックされることによるノイズを減らすため、トラッキング防止のエラー (en-US)、CSP のエラー、CORS のエラー による ブラウザーコンソール のメッセージを自動的にグループ化するようになりました (Firefox バグ 1522396)。
* コンソールに表示されているログを、コンテキストメニューの新しい項目である [表示メッセージをエクスポート] でファイルに保存、またはクリップボードにコピーして共有できるようになりました (Firefox バグ 1517728)。
* コンソールのツールバーが、縦方向の領域を節約するためレスポンシブに高さを 1 行に減らすようになりました (Firefox バグ 972530)。
* Firefox UI が発したログに集中するため、コンソールでコンテンツが発したメッセージを隠せるようになりました (Firefox バグ 1523842)。

#### ネットワーク

* CSP または 混在コンテンツ のためにブロックされたリソースを、詳しい理由とともにネットワークパネルに表示するようになりました (Firefox バグ 1556451)。
* ネットワークパネルで、リソースの完全な URL を表示する *URL* 列が新たに使用可能になりました (Firefox バグ 1341155)。

#### インスペクター

* ページインスペクター で要素にマウスポインターを載せたときに表示される情報バーで、その要素がフレックスコンテナーやフレックスアイテムであることを表示するようになりました (Firefox バグ 1521188)。
* サブグリッドを持つグリッドを含むページを検査するとき、サブグリッドの行が表示されるたびに親グリッドのオーバーレイ行が表示されます。親グリッドのオーバーレイチェックボックスが選択されていない場合、その行は半透明になります (Firefox バグ 1550519).

#### リモートデバッグ

* モバイルウェブブラウザーのために、リモートデバッグの機能を古い WebIDE から再設計した about:debugging に移行しました。USB を通してリモート端末の GeckoView をリモートデバッグするエクスペリエンスが向上します (Firefox バグ 1462208)。

#### 全般

* 開発ツールのパネルの並び順を、人気を反映して変更しました (Firefox バグ 1558630)。
### HTML

* さらに仕様書へ準拠させるため、既定の `disabled` `mode` で生成された `<track>` 要素では、要素に関連付けられたテキストトラックがテキストキューを含む WebVTT ファイルを読み込まないようになりました。`mode` が `disabled` であるキューにアクセスまたは操作するには、`mode` を `started` または `hidden` に変更します。これによって WebVTT データの読み込みが発生します (Firefox バグ 1550633)。

#### 廃止

* HTML `<keygen>` 要素を Firefox から削除しました。これは以前から非推奨であり、また用途がほかの技術に取って代わられました (Firefox バグ 1315460)。
### CSS

* `white-space` プロパティの値 `break-spaces` を実装しました (Firefox バグ 1351432)。
* SVG ジオメトリー属性 (`width (en-US)` や `height (en-US)` など) が、CSS のプロパティとしても定義されました (Firefox バグ 1383650)。
* WebVTT で表示されるキャプション ("cues") にスタイルを設定するために使用する `::cue` セレクターで、仕様書に従ってキューに使用できる CSS プロパティが制限されるようになりました (Firefox バグ 1321488)。
* 仕様書に従って、`::marker` に適用できるプロパティを制限しました (Firefox バグ 1552578)。
* `overflow-block` および `overflow-inline` プロパティを実装しました (Firefox バグ 1470695)。
* CSS Feature Queries (`@supports`) で `selector()` メソッドを使用して、セレクターをサポートしているかをテストできるようになりました (Firefox バグ 1513643)。
* 対象の要素でユーザーがテキストを選択できるかを指定する `user-select` プロパティの接頭辞を外しました (Firefox バグ 1492739)。
* リトアニア語のロケール固有の大文字・小文字規則を実装しました (Firefox バグ 1322992)。こちらの例をご覧ください。
* CSS Text の `line-break` プロパティを実装しました (Firefox バグ 1011369) および (Firefox バグ 1531715)。
* 要素とその内容物が DOM ツリーのほかの部分からおおむね独立していることを開発者が定義できる `contain` プロパティを実装しました (Firefox バグ 1487493)。
### SVG

* gzip で圧縮された SVG-in-OpenType をサポートしました (Firefox バグ 1359240)。
* `SVGGeometryElement.isPointInFill()` (en-US) および `SVGGeometryElement.isPointInStroke()` (en-US) メソッドを実装しました (Firefox バグ 1325319)。
### JavaScript

* パブリッククラスフィールドを既定で有効にしました (Firefox バグ 1555464)。詳しくはクラスフィールドもご覧ください。
* プロミスの拒否イベントである `unhandledrejection` および `rejectionhandled` を既定で有効にしました (Firefox バグ 1362272)。これらの動作について詳しくは プロミスの拒否イベント をご覧ください。
### HTTP

* HTTP の `Access-Control-Expose-Headers`、`Access-Control-Allow-Methods`、`Access-Control-Allow-Headers` ヘッダーが、資格情報がないリクエストを示すワイルドカード値 "`*`" を受け入れるようになりました (Firefox バグ 1309358)。この変更は Firefox 68 ESR に反映されました。
### API

#### 新規 API

* リサイズオブザーバー API を既定で有効にしました (Firefox バグ 1543839)。
* Microtask API (`queueMicrotask()`) を実装しました (Firefox バグ 1480236)。

#### DOM

* ワーカーで `DOMMatrix`、`DOMPoint`、および関連オブジェクトをサポートしました (Firefox バグ 1420580)。
* 仕様書に準拠させるため、`pageX` および `pageY` プロパティを `UIEvent` から `MouseEvent` に移動しました (Firefox バグ 1178763)。これらのプロパティは、`UIEvent` から継承する `CompositionEvent`、`FocusEvent`、`InputEvent`、`KeyboardEvent`、`TouchEvent` インターフェイスに公開されなくなりました。
* `Blob.text()`、`Blob.arrayBuffer()`、`Blob.stream()` メソッドを実装しました (Firefox バグ 1557121)。
* `DOMMatrix.fromMatrix()` を実装しました (Firefox バグ 1560462)。
* 引数が 6 個の `DOMMatrix.scale()` メソッドをサポートしました (Firefox バグ 1397945)。
* 仕様書に従って `DOMMatrix.translate()`、`DOMMatrix.skewX()`、`DOMMatrix.skewY()` の引数がすべて省略可能になりました (Firefox バグ 1397949)。
* `navigator.userAgent`、`navigator.platform`、`navigator.oscpu` プロパティが、64 ビット版 OS で 32 ビット版 Firefox を実行していることを公表しないようになりました (Firefox バグ 1559747)。`Linux i686 on x86_64` に代わって `Linux x86_64`、`WOW64` に代わって `Win64` を示します。
* `HTMLDocument` に残されているメソッドを、`Document` に移動しました。これはほとんどの場合、目に見えるほどの影響は発生しないでしょう。特に `close()`、`open()`、`write()` メソッドが移動しました。よって、さまざまなプロパティだけでなく `execCommand()` などのエディター関連メソッドも持つようになりました (Firefox バグ 1549560)。
* `AbstractRange` および `StaticRange` を実装しました (Firefox バグ 1444847)。

#### メディア、Web Audio、WebRTC

* ユーザーのセキュリティを向上させるため、および最新版のメディアキャプチャとストリーム仕様書に合わせるために、安全でないコンテキストでは `navigator.mediaDevices` プロパティを提供しないようになりました。`getUserMedia()`、`getDisplayMedia()`、`enumerateDevices()` などを使用するには、HTTPS を使用してコンテンツを読み込むようにしてください (Firefox バグ 1528031)。
* Web Audio API の `AudioParam.value` プロパティが、現時点のプロパティの実際の値を、その値に適用されるすべての予定済みまたは段階的な変更を考慮したうえで返すようになりました。以前の Firefox は、(`value` セッターを使用して) 直近に明示的に設定された値だけを返していました(Firefox バグ 893020).
* 新たにトラックを辞書式順序で使用するように `MediaStreamAudioSourceNode` を更新しました。以前はトラックの順序が個々のブラウザー次第であり、任意に変更することもできました。加えて、音声トラックがないストリームを使用して `MediaStreamAudioSourceNode` を作成しようとすると `InvalidStateError` 例外が発生するようになりました (Firefox バグ 1553215)。
* `facingMode` (en-US)、`deviceId` (en-US)、`groupId` (en-US) 設定が、`MediaStreamTrack.getSettings()` (en-US) を呼び出すと返される `MediaTrackSettings` (en-US) オブジェクトのメンバーに含まれるようになりました (Firefox バグ 1537986)。

#### 廃止

* `DOMMatrix.scaleNonUniformSelf()` メソッドを削除しました (Firefox バグ 1560119)。
### WebDriver conformance (Marionette)

#### その他

* Marionette が、モーダルダイアログやユーザープロンプトの開く・閉じるを動的に制御するようになりました (Firefox バグ 1477977)。これは、複数開くプロンプトも制御されることを意味します (Firefox バグ 1487358)。
* DOM の一部が削除されたり追加の通知が出たりすることを防ぐため、既定でトラッキング防止と DOM push 機能を無効化するようになりました (Firefox バグ 1542244)。
* Firefox が低メモリ状態になったときにバッググラウンドのタブを自動的にアンロードする機能を無効化しました。これはタブを切り替えるときの自動化に悪影響がありました (Firefox バグ 1553748)。
アドオン開発者向けの変更点
-------------

### API の変更点

* UserScripts API (en-US) を既定で有効にしました。
* `topSites.get()` (en-US) メソッドで、新たなオプションである `includePinned` および `includeSearchShortcuts` が使用可能になりました (Firefox バグ 1547669)。
### その他の変更点

* ホワイトリストに記載されたものを除く*すべての*拡張機能をブラックリストに登録する グループポリシー設定 を追加しました (Firefox バグ 1522823)。
関連情報
----

* Hacks release post: Firefox 69 — a tale of Resize Observer, microtasks, CSS, and DevTools
過去のバージョン
--------

* Firefox 68 for developers
* Firefox 67 for developers
* Firefox 66 for developers
* Firefox 65 for developers
* Firefox 64 for developers
* Firefox 63 for developers
* Firefox 62 for developers
* Firefox 61 for developers
* Firefox 60 for developers
* Firefox 59 for developers
* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers
* Firefox 43 for developers
* Firefox 42 for developers
* Firefox 41 for developers
* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers


Firefox 22 for developers - Mozilla

Firefox 22 for developers
=========================

Gecko 22 を搭載した Firefox 22 は米国時間 2013 年 6 月 25 日にリリースされました。このページでは、開発者に影響する Firefox 22 の変更点をまとめています。

Web 開発者向けの変更点一覧
---------------

### HTML

* HTML5 の `<data>` 要素を実装しました (Firefox バグ 839371)。
* `<input>` 要素の `range` ステート (`<input type="range">`) を実装しました。設定 `dom.experimental_forms_range` で制御されており、現在は Nightly および Aurora チャンネルのみ既定で有効にしています (Firefox バグ 841948).
* Web component 仕様の一部である `<template>` 要素をサポートしました (Firefox バグ 818976)。
### JavaScript

* Asm.js の最適化が有効になり、パフォーマンス向上のために C/C++ アプリケーションを JavaScript のサブセットにコンパイルすることが可能になります。
* ES6 の Arrow Function (en-US) 構文を実装しました (Firefox バグ 846406)。
* 新しい Object.is 関数が追加されました (Firefox バグ 839979)。
### DOM

* `XMLHttpRequest` の `multipart` プロパティおよび `XMLHttpRequest` の `multipart/x-mixed-replace` レスポンスのサポートを削除しました。これは Gecko だけの機能であり、標準化されませんでした。Server-Sent Events、Web Sockets、あるいは progress イベントをもとに `responseText` を調べることを、代わりに使用できます。
* Web Notifications をサポートしました (Firefox バグ 782211)。
* `FormData` (en-US) の `append` メソッドが、省略可能な第 3 引数 `filename` を受け入れるようになりました (Firefox バグ 690659)。
* `Node.isSupported` を削除しました (Firefox バグ 801562)。
* `Node.setUserData` および `Node.getUserData` を web content 向けには削除、chrome content 向けには非推奨としました (Firefox バグ 842372)。
* 仕様書で求められたため、`Element.attributes` プロパティを `Node` から移転しました (Firefox バグ 844134)。
* **Ambient Light Events** の Mac OS X バックエンドを実装しました。
* ローカルネームが `<bgsound>`、`<multicol>` および `<image>` である HTML ネームスペースの要素は、`HTMLSpanElement` インターフェイスを実装しません。`<bgsound>` および `<multicol>` は `HTMLUnknownElement` を、`<image>` は `HTMLElement` を実装します。
* `NodeIterator.detach` (en-US) は何も行わないようになりました (Firefox バグ 823549)。
* `BlobEvent` インターフェイスを実装しました (Firefox バグ 834165)。
* それぞれ `HTMLMediaElement.crossOrigin` および `HTMLInputElement.inputMode` の仕様に合致させるため、`HTMLMediaElement.crossorigin` プロパティおよび `HTMLInputElement.inputmode` プロパティを削除しました (Firefox バグ 847370 および Firefox バグ 850346)。
* WebRTC: Media Stream API および Peer Connection API をデフォルトでサポートします。
* Web Components: `Document.register` メソッドを実装しました (Firefox バグ 783129)。
### CSS

* CSS Flexbox layout をデフォルトで有効にしました (Firefox バグ 841876)。
* 仕様書の変更に従って、`min-width` および `min-height` の初期値を flexbox アイテムでも `0` に戻しました (Firefox バグ 848539)。
* CSS 条件文 (`@supports` および `CSS.supports`) をデフォルトで有効にしました (Firefox バグ 855455)。
* `background` 短縮プロパティで `background-clip` および `background-origin` プロパティをサポートしました (Firefox バグ 570896)。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

* `nsITreeView` のメソッド `nsITreeView.getCellProperties`、`nsITreeView.getColumnProperties` および `nsITreeView.getRowProperties` から、引数 `properties` を削除しました。これらのメソッドは空白で区切られたプロパティ名の文字列を返すようになります。(Firefox バグ 407956)
* `inIDOMUtils.getCSSPropertyNames` メソッドを実装しました。これはサポートしているすべての CSS プロパティ名を返します。
* さらなる変更点については こちら (日本語訳) をご覧ください。
### Firefox 開発ツール

* フォントインスペクタが、コンピュータ内のどのフォントがページに適用されているかを表示します。
* ハイライト表示によるフィードバックで、ページのどの領域がいつ再描画されたかを示します。
* 開発ツールをブラウザの下側だけでなく、右側にもドッキング可能になりました。
* 開発ツール内の一部ペインを XUL から HTML に切り替えました。例えば CSS ルールビューアは、`cssruleview.xul` ではなく chrome://browser/content/devtools/cssruleview.xhtml になりました。load listener を読み込んでこれらの HTML ドキュメントを変更するには、ペインの機能を拡張するために直接オーバーレイを追加するのではなく、外側の XUL ドキュメントにオーバーレイやスクリプトを追加します。
* デバッガで、スタックトレースが上側にパンくずリストのように表示されるようになりました。またスクリプト一覧がパネルの左側に表示されるようになりました。
関連情報
----

* Firefox 22 リリースノート
* Firefox 22 アドオン互換性情報
### バージョン

* Firefox 21 for developers
* Firefox 20 for developers
* Firefox 19 for developers
* Firefox 18 for developers
* Firefox 17 for developers
* Firefox 16 for developers
* Firefox 15 for developers
* Firefox 14 for developers
* Firefox 13 for developers
* Firefox 12 for developers
* Firefox 11 for developers
* Firefox 10 for developers
* Firefox 9 for developers
* Firefox 8 for developers
* Firefox 7 for developers
* Firefox 6 for developers
* Firefox 5 for developers
* Firefox 4 for developers
* Firefox 3.6 for developers
* Firefox 3.5 for developers
* Firefox 3 for developers
* Firefox 2 for developers
* Firefox 1.5 for developers


Firefox 3.6 for developers - Mozilla

Firefox 3.6 for developers
==========================

Firefox 3.6 では新規あるいは開発中のウェブ標準のサポート、性能の向上、ウェブユーザと開発者にとってより良い体験が提供されます。このページは Firefox 3.6 で新しく利用出来るようになった機能に関する記事のリンクを提供します。

Web サイトとアプリケーション開発者向け
---------------------

### CSS

グラデーションの利用

Firefox 3.6 では `background` において、Mozilla が提案中の `-moz-linear-gradient` (en-US) と `-moz-radial-gradient` (en-US) プロパティのサポートが追加されました。

複数の背景

`background` プロパティ（および `background-color`、`background-image`、`background-position`、`background-repeat`、`background-attachment`）が複数の背景をサポートしました。これによりひとつのレイヤーの中で他に重なるような背景を指定できます。

Mozilla 独自のメディア特性

Mozilla 独自のシステムメトリックスに複数のメディア特性が追加されました。このメディア特性により、タッチサポートのような機能の有効性の確認を、media queries を使用してより安全に行えるようになりました。

背景画像のスケーリング

CSS 3 Backgrounds and Borders 草案の `background-size プロパティが` `-moz-background-size` (en-US) としてサポートされました。

WOFF フォントのサポート

`@font-face` が新しい WOFF ウェブフォントファイルフォーマットをサポートしました。

ポインタイベント (en-US)

`pointer-events` プロパティにより、要素がマウスポインタのイベントのターゲットであるかどうかをコンテンツが指定できるようになります。

#### その他の CSS の変更

* CSS3 Values and Units で定義されている長さの単位 `rem` がサポートされました。 バグ 472195
* `image-rendering` が画像、背景画像、ビデオ、canvas でサポートされました。 バグ 423756
* `text-align`:end がサポートされました。バグ 299837
* table `display` タイプの要素に対する DOM の変更がより良く動作するようになりました。
* `indeterminate` 属性が `true` である `checkbox` `input` (en-US) 要素にマッチする `:indeterminate` 擬似クラスのサポートが追加されました。
* `:-moz-locale-dir(ltr)` と `:-moz-locale-dir(rtl)` が追加され、ユーザインタフェースが left-to-right または right-to-left のどちらで描画されるかに応じて、容易にレイアウトをカスタマイズできるようになりました。バグ 478416
* ウィンドウ化されたプラグインは CSS transforms の中では表示されなくなりました。これはコンポジターによって正しく変換されないためです。
### HTML

ウェブアプリケーションからファイルを扱う

新しい HTML5 File API のサポートが Gecko に追加され、ウェブアプリケーションがユーザの選択したローカルファイルにアクセス出来るようになりました。これには `input type="file"` HTML 要素において複数のファイルを選択する `multiple` 属性のサポートが含まれます。

HTML5 video がポスター・フレームをサポート

`video` 要素で `poster` 属性がサポートされ、コンテンツがビデオの再生が開始されるまでに表示されるポスター・フレームを指定できるようになりました。

チェックボックスとラジオボタンが `indeterminate` 属性をサポート

`checkbox` と `radio` タイプの HTML `input` (en-US) 要素が indeterminate 属性をサポートし、3 番目の "indeterminate" 状態を持てるようになりました。

Canvas 画像のスムージングが制御可能に

`canvas` 要素のスケーリング時に、新しい `mozImageSmoothingEnabled` プロパティでスムージングの有無を指定できるようになりました。

### JavaScript

Gecko 1.9.2 は JavaScript 1.8.2 を採用し、ECMAScript 5 standard から多くの言語機能が追加されました:

* `Date.parse()` は YYYY-MM-DD のような ISO 8601 dates をデコードできるようになりました。
* function インスタンスの `prototype` プロパティは列挙可能 (enumerable)ではなくなりました。
### DOM

Web workers が自己終了可能に

Workers が `nsIWorkerScope.close()` メソッドをサポートし、自分自身で終了できるようになりました。

ドラッグ＆ドロップがファイルをサポート

ドラッグリスナーで提供される `DataTransfer` オブジェクトがドラッグされたファイルを含むようになりました。

デバイスの傾きの検出

コンテンツはデバイスが加速度センサー（accelerometer）をサポートしていれば `MozOrientation` イベントによりその傾きを検出できるようになりました。Firefox 3.6 は Mac のノートブックで加速度センサーをサポートします。

document の幅と高さの変化の検出

document の `scrollWidth` または `scrollHeight` プロパティが変化すると、 `MozScrollAreaChanged` イベントが発動します。

#### その他の DOM の変更

* `getBoxObjectFor()` メソッドが**削除されました**。このメソッドは非標準であり、さらに非標準なものを Web にさらすことになるからです。バグ 340571 を参照してください。これはまた、Gecko の検出にこのメソッドをコールする MooTools にも影響します。これは最新の MooTools で修正されたのでいずれ更新されるでしょう。
* DOM windows に新しい `mozInnerScreenX` と `mozInnerScreenY` プロパティが追加されました。これらはウィンドウ表示領域の左上コーナーを基準にしたスクリーンの座標を返します。
* chrome に対してのみアクセス可能な新しい `mozScreenPixelsPerCSSPixel` プロパティは CSS ピクセルとスクリーン・ピクセルの変換率を提供します。この値はコンテンツのズームレベルに応じて変化します。
* ページ URI の文書フラグメント識別子（"#" (ハッシュ) 文字の後の部分）が変更になったとき、新たな `hashchange` イベントがページに送られます。バグ 385434、バグ 504837、および バグ 504220 を参照してください。
* `document.readystate で` `complete`属性がサポートされました。バグ 347174。
* HTML5 の `element.classList` がサポートされ、クラス属性の処理が容易になりました。バグ 501257
* HTML 文書の `localName` と `namespaceURI` が XHTML 文書と同じように振舞うようになりました。`localName` は小文字で値を返し、HTML 要素の `namespaceURI` は `"http://www.w3.org/1999/xhtml"` です。
* `nsIDOMGeoPositionAddress` インタフェースによりジオロケーションの address がサポートされ、新しいフィールドが `nsIDOMGeoPosition` に追加されました。バグ 503942
* `window.getComputedStyle` 関数は `url()` 値の中をクォートして返すようになりました。
### XPath

choose() XPath メソッドをサポート

`choose()` メソッドが XPath でサポートされました。

XUL とアドオン開発者向け
--------------

あなたが拡張機能の開発者なら、あなたの拡張機能に影響するかもしれない変更点の役に立つ概要を記した Updating extensions for Firefox 3.6 (en-US) を読むことから始めてください。プラグインの開発者は Updating plug-ins for Firefox 3.6 (en-US) を読んでください。

### 新機能

デバイスの傾きの検出

コンテンツはデバイスが加速度センサー（accelerometer）をサポートしていれば `MozOrientation` イベントによりその傾きを検出できるようになりました。Firefox 3.6 は Mac のノートブックで加速度センサーをサポートします。

HTTP アクティビティのモニタリング

HTTP トランザクションをモニタし、リアルタイムでリクエストとレスポンスを観察できます。

Windows のタスクバーとの協調

Windows 7 またはそれ以降のタスクバー内で、ウィンドウの設定の変更が可能になりました。*Firefox 3.6 ではこの機能はデフォルトで無効になっています。*

### Places

* Places のクエリーは結果にリダイレクトされたページが含んでいるかどうかを特定できるように `nsINavHistoryQueryOptions` インタフェースで `redirectsMode` を利用できるようになりました。
* 新しい `nsIFaviconService.expireAllFavicons()` メソッドが `nsIFaviconService` インターフェースに追加されました。
### Storage

Storage API でデータのロケールを考慮した照合がサポートされました

Gecko 1.9.2 にロケールを考慮した技術を用いて最適化された照合を提供する複数の新しい（ソート付き）照合メソッドが追加されました。

ステートメントのプロパティが列挙可能になりました

ステートメントのすべてのプロパティを列挙する `for..in` enumeration が利用できるようになりました。

mozIStorageStatement の getParameterIndex の動作が 3.5 と 3.6 の間で変更された

詳細は バグ 528166 を参照してください。

複数のパラメータのセットを非同期バインドしてステートメントを実行

詳細は バグ 490085 を参照してください。ドキュメント準備中です。

### Preferences

* `nsIContentPrefService` インタフェースが新しく二つのメソッドを持ちました: `nsIContentPrefService.getPrefsByName()` と `nsIContentPrefService.removePrefsByName()`。
### テーマ

テーマに関する変更の詳細は Updating themes for Firefox 3.6 (en-US) を参照してください。

軽量テーマ

Firefox 3.6 は軽量テーマをサポートします。これは作成するのが簡単なテーマで、ブラウザウィンドウの上部（URL バーとボタンバー）と下部（ステータスバー）に単純に画像を適用します。これは既存の Personas テーマ構造の Firefox への統合です。

### その他

* Firefox は components ディレクトリ内にインストールされたサードパーティのコンポーネントをロードしなくなりました。これはバグのあるサードパーティコンポーネントが実行されるのを防止することによる安定性の向上に貢献します。このやり方でコンポーネントをインストールする開発者は標準的なアドオンとしてインストールできるようにそれらコンポーネントを XPI パッケージとして再パッケージする必要があります。
* 拡張において chrome を登録するために用いていた `contents.rdf は利用できなくなりました`。 `chrome.manifest` ファイルを代わりに利用しなければなりません。 バグ 492008 を参照してください。
* メニューバーを自動的に隠すためのサポートが追加されました。バグ 477256 を参照してください。
* オブジェクトに対して `container-live-role` 属性を持たせるためのサポートが追加されました。バグ 391829 を参照してください。
* `tabs-closebutton` バインディングが削除されました。バグ 500971 を参照してください。
* 発生したイベントに基づいて音を鳴らすための `nsISound` に対するサポートが追加されました。 バグ 502799 を参照してください。
* Gecko 1.9 での新しいドラッグ＆ドロップ API をサポートするために `nsITreeView` のメソッドである `nsITreeView.canDrop()` および `nsITreeView.drop()` の構文が変更になりました。バグ 455590 を参照してください。
* Windows のダイアログとウィザードのデフォルトボタンへのマウスカーソルの移動がサポートされました。バグ 76053 を参照してください。これはダイアログとウィザード要素によって自動的に行われます。ただし、XUL アプリケーションが `window` 要素のウィンドウを生成し、それがデフォルトボタンを持つ場合は、ウィンドウの onload イベントで `nsIDOMChromeWindow.notifyDefaultButtonLoaded()` をコールする必要があります。
* `nsILocalFileMac` インタフェースが二つのメソッドを持ちました: `setFileTypeAndCreatorFromMIMEType()` と `setFileTypeAndCreatorFromExtension()`。
* 新しい `NetUtils.jsm` コードモジュールは、入力ストリームから出力ストリームに非同期にデータをコピーする簡単に利用できるメソッドを提供します。
* 新しい `openLocationLastURL.jsm` コードモジュールは、プライベートブラウジングモードであるかを正しく判断して、"Open Location" ダイアログボックスの記憶された URL データの読み込みと変更を容易にします。
* Windows では、`nsIScreen` インタフェースは、グラフィックスドライバーが 32 ビットをサポートしていても、ピクセルごとに 24 ビットカラーをレポートします。これは 24 ビットは実際に利用されているカラーピクセルの数をより正確に表現するためです。
* Window では `toolbar` XUL 要素の新しい `autohide` アトリビュートを用いてメニューバーを隠すことができます。
* `loadOneTab` と `addTab` メソッドは新しい `relatedToCurrent` パラメータをサポートし、加えて、多くのパラメータが省略可能であるために名前によるパラメータの指定ができます。
* インストール manifests で "hidden" プロパティはサポートされなくなりました。アドオンマネージャウィンドウ上でユーザが見ることのできないアドオンは不可能になりました。
* @mozilla.org/webshell;1 コンポーネントはもう存在しません。代わりに @mozilla.org/docshell;1 を使う必要があります。
* タイマーイベントをスケジュールするために、タイマーがコールするオブジェクトをインスタンシエイトすることなく update-timer カテゴリで登録できるようになりました。代わりに必要になったときにインスタンシエイトされます。詳細は `nsIUpdateTimerManager.registerTimer()` を参照してください。
* The `NPN_GetValue()` 関数はもはや変数値 `NPNVserviceManager`, `NPNVDOMelement`, `NPNVDOMWindow`を経由した XPCOM へのアクセスを提供しません。これは将来のバージョンの Gecko バージョンでプラグインを分離したプロセスで動作させるための作業の一部です。
Firefox/Gecko 開発者向け
-------------------

いくつかの変更はあなたが Firefox そのものの内部で作業している場合にだけ興味を持つことでしょう。

### マージされたインタフェース

以下のインタフェースは統合されました:

* `nsIPluginTagInfo2` は `nsIPluginTagInfo` にマージされました。
* `nsIPluginInstanceInternal`, `nsIPPluginInstancePeer`, `nsIPluginInstancePeer1`, `nsIPluginInstancePeer2`, `nsIPluginInstancePeer3` はすべて `nsIPluginInstance` にマージされました。
* `nsIWindowlessPlugInstPeer` は `nsIPluginInstance` にマージされました。
* `nsIPluginManager` と `nsIPluginManager2` は `nsIPluginHost` にマージされました。
### 削除されたインタフェース

以下のインタフェースは利用されていない、実装されていないまたは旧式であるためにすべて削除されました:

* `nsIFullScreen`
* `nsIDOMSVGListener`
* `nsIDOMSVGZoomListener`
* `nsIInternetConfigService`
* `nsIDKey`
* `nsIEventHandler`
* `nsIJRILiveConnectPIPeer`
* `nsIJRILiveConnectPlugin`
* `nsIScriptablePlugin`
* `nsIClassicPluginFactory`
* `nsIFileUtilities`
### 移動されたインタフェース

以下のインタフェースは以前の IDL ファイルから新しい場所に移動されました:

* `nsIDOMNSCSS2Properties` は専用の IDL ファイル (`dom/interfaces/css/nsIDOMCSS2Properties.idl`) に移動されました。
* `nsIUpdateTimerManager` はそれ自身の IDL ファイル内に配置されます。

多くのインタフェースが移動されました。完全なリストは Interfaces moved in Firefox 3.6 を参照してください。

### その他のインタフェースの変更

以下のようなさまざまな変更が行われました:

* `nsIPlugin` インタフェースは `nsIFactory` ではなく `nsISupports` から継承します。
* `nsIPluginHost` インタフェースは `nsIFactory` ではなく `nsISupports` から継承しますす。
* `nsIFrame` インタフェースは `nsISupports` ではなく `nsQueryFrame` から継承します。
* `nsIDeviceContext` メソッド `getPaletteInfo()` は今まで実装されてことがないので削除されました。
* `nsIScriptContext` メソッド `reportPendingException()` はもう利用されていないので削除されました。
### アクセシビリティコードの変更

* メインドキュメントの子どもが変更された時と同様に、frame と iframe の子どもが変更されたときに EVENT`_REORDER` アクセシビリティイベント が送信されます。バグ 420845 を参照してください。
* `nsIAccessibleTable.selectRow()` は指定された列が選択される前にどんなカレントの選択であっても正しく削除します。
参照
--

* Firefox 3.5 for developers
* Firefox 3 for developers
* Firefox 2 for developers
* Firefox 1.5 for developers


Firefox 110 for developers - Mozilla

Firefox 110 for developers
==========================

このページでは、開発者に影響する Firefox 110 の変更点をまとめています。Firefox 110 は、米国時間 2023 年 2 月 14 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### HTML

変更なし。

### CSS

* コンテナークエリーと、コンテナークエリーの長さの単位をデフォルトで有効にしました。
 これらのクエリーや関連する長さの単位について、詳しくは CSS Container Queries の文書をご覧ください (Firefox バグ 1809720)。
* color-gamut メディアクエリー をサポートしました (Firefox バグ 1422237)。
* Windows および Linux で、`type="color"` を持つ `<input>` 要素で `list` 属性をサポートしました (Firefox バグ 960984)。
* `@page` アットルールで名前つきページをサポートしました。これは `page` (en-US) プロパティを使用して、ユーザーが特定のセレクターで改ページを生成することを可能にします (Firefox バグ 1787947)。
### JavaScript

* `Worker.postMessage()` および `structuredClone()` を使用したとき、ネイティブなエラーの型 をシリアライズした結果に worker の `stack` プロパティも含まれるようになりました。
 この機能追加によりメインスレッドと worker の両方で、構造化複製アルゴリズム を使用するすべてのメソッドでネイティブエラーのスタックの複製が機能するようになりました (詳しくは Firefox バグ 1774866 をご覧ください)。
### API

* Permission API の `midi` パーミッションをサポートしました。
 これにより、`navigator.permissions.query()` を使用して Web MIDI API の使用許可の状態を問い合わせできます (Firefox バグ 1772166)。
* `ReadableStream` で、`for await...of` 構文を使用する ストリーム内のチャンクの非同期反復処理 をサポートしました (Firefox バグ 1734244)。
* WebRTC で、ピア接続にトランシーバーを追加する際に使用可能なエンコーディングのセットを送信すること、および送信元に紐づいたアクティブなエンコーディングを取得することをサポートしました。
 特に `RTCPeerConnection.addTransceiver()` (en-US) で、`init` (en-US) パラメーターオブジェクトで `sendEncodings` (en-US) オプションを使用すること、および送信データでエンコーディングが使用されているかを確認するために使用できる `RTCRtpEncodingParameters.active` (en-US) をサポートしました (詳しくは Firefox バグ 1676855 をご覧ください)。
* WebRTC の `RTCRtpSender.getParameters()` (en-US)、`RTCRtpSender.setParameters()` (en-US)、`RTCRtpReceiver.getParameters()` (en-US) メソッドが仕様書に準拠するようになりました (Firefox バグ 1401592)。
### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* `network.beforeRequestSent` (Firefox バグ 1790368)、`network.responseStarted` (Firefox バグ 1790370)、`network.responseCompleted` (Firefox バグ 1790372) イベントをサポートしました。
* ページ全体のスクリーンショットを取得する `browsingContext.captureScreenshot` コマンドをサポートしました (Firefox バグ 1800086)。
* 汎用プラットフォームオブジェクト (Firefox バグ 1792524)、`NodeList` 型および `HTMLCollection` 型プラットフォームオブジェクト (Firefox バグ 1802284) のシリアライズとデシリアライズをサポートしました。
* `browsingContext.domContentLoaded` および `browsingContext.load` イベントに `timestamp` フィールドを追加しました (Firefox バグ 1790378)。
* Added a `type` field to the response for `script.evaluate` および `script.callFunction` の応答に、`success` または `exception` の結果を示す `type` フィールドを追加しました (Firefox バグ 1803599)。

#### Marionette

* 最近の WebDriver classic の変更に従って、既知のノード (要素やシャドウルートの参照) のキャッシュを親プロセスからウェブコンテンツプロセスへ移動しました (Firefox バグ 1692468)。
* WebDriver classic 仕様に準拠させるため、JSON のシリアライズおよびデシリアライズのアルゴリズムを改良しました (Firefox バグ 1794078)。
アドオン開発者向けの変更点一覧
---------------

* `"webRequestFilterResponse"`API 権限 を追加しました。この権限は、`webRequest.filterResponseData` (en-US) へのアクセスを提供します。この権限は、実行時に要求する権限として提供できます。この権限について、詳しくは `webRequest.filterResponseData` (en-US) をご覧ください (Firefox バグ 1809235)。
* `tabs.ZoomSettings` (en-US) の `defaultZoomFactor` プロパティが、デフォルトのズーム倍率の設定値を返すようになりました (Firefox バグ 1772166)。
過去のバージョン
--------

* Firefox 109 for developers
* Firefox 108 for developers
* Firefox 107 for developers
* Firefox 106 for developers
* Firefox 105 for developers
* Firefox 104 for developers
* Firefox 103 for developers
* Firefox 102 for developers
* Firefox 101 for developers
* Firefox 100 for developers
* Firefox 99 for developers
* Firefox 98 for developers
* Firefox 97 for developers
* Firefox 96 for developers
* Firefox 95 for developers
* Firefox 94 for developers
* Firefox 93 for developers
* Firefox 92 for developers
* Firefox 91 for developers
* Firefox 90 for developers
* Firefox 89 for developers
* Firefox 88 for developers
* Firefox 87 for developers
* Firefox 86 for developers
* Firefox 85 for developers
* Firefox 84 for developers
* Firefox 83 for developers
* Firefox 82 for developers
* Firefox 81 for developers
* Firefox 80 for developers
* Firefox 79 for developers


Firefox 40 for developers - Mozilla

Firefox 40 for developers
=========================

Firefox の最新の開発者向け機能をテストするには、 Firefox Developer Edition をインストールしてください Firefox 40 は、米国時間 2015 年 8 月 11 日にリリースされました。このページでは、開発者に影響する Firefox 40 の変更点をまとめています。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

ハイライト:

* アニメーションビューを改良
* CSS プロパティの構文のヘルプを MDN から取得
* インスペクターでフィルターを編集
* ワーカーが発したメッセージをウェブコンソールで表示
* ネットワークモニタでー、要求を URL でフィルタリング
* ネットワークモニターで、多くの新たなコンテキストメニュー項目を追加
* ネットワークリソースがブラウザーのキャッシュから取得されたことを示す
* ページインスペクターで、ルールをフィルタリング

さらに:

* 無名の eval ソース内で、debugger; 構文でブレーク
* デバッガーのソースリストペインで、Copy URL および Open in New Tab コンテキストメニュー項目を追加
* ウェブコンソールで console.dirxml をサポート
* スタイルエディターで、スタイルシートリストのコンテキストメニューに "Open Link In New Tab" を追加
* インスペクターのセレクター検索で、CSS 接頭辞をつけなくても class や id を検索結果に表示
* ボックスモデルビューのツールチップで、どの CSS ルールによって値が決まったかを表示
* インスペクターで、Shift + クリックで色単位を切り替え
* インスペクターで、"Scroll Into View" メニュー項目を実装
* インスペクターで、url/id/resource 属性をリンクとして扱う
* ネットワークモニターで、IP アドレスをツールチップで表示

Firefox 39 から Firefox 40 の間に解決した開発ツール関連のバグ一覧

### CSS

* 接頭辞 (`-moz-`) 付きの `text-decoration-color`、`text-decoration-line`、`text-decoration-style` を削除しました (Firefox バグ 1097922)。
* `text-align` プロパティで `match-parent` 値をサポートしました (Firefox バグ 645642)。
* Quirks モードで `empty-cells` の既定値が、Standard モードと同様に `show` になりました (Firefox バグ 1020400)。
* `<meter>` および `<progress>` 要素で使用している非標準の `-moz-orient` プロパティが、writing-modes の縦書きに対応しました。`auto` を削除して、`inline` および `block` を追加しました。新たな既定値は `inline` です (Firefox バグ 1028716)。
* `font-size-adjust` プロパティで、値 `0` は `none` (調整を行わない、または値 `1.0` になる) と同じではなく、倍数 (高さが `0` になるため、表示されない) として扱うように修正しました (Firefox バグ 1144885)。
* 縦書きモードで text-overflow が動作しない問題を修正しました (Firefox バグ 1117227)。
### HTML

*変更なし。*

### JavaScript

* `return` 文の後方にある到達できないコード (セミコロンがない return 文 の後方にある、到達できない式を含む) について、コンソールに警告を表示します (Firefox バグ 1005110、Firefox バグ 1151931)。
* `Symbol.match` を追加しました (Firefox バグ 1054755)。
* `Symbol.match` プロパティが truthy な値であるオブジェクトを `String.prototype.startsWith`、`String.prototype.endsWith`、`String.prototype.contains` に渡すと、`TypeError` が発生するようになりました (Firefox バグ 1054755)。
* `Symbol.match` プロパティが真値であるパターンオブジェクトを使用して `new` を伴わずに `RegExp` 関数を呼び出すと、パターンそのものが返るようになりました。また、パターンオブジェクトの `constructor` プロパティは `RegExp` 関数に等しくなります (Firefox バグ 1147817)。
* JS1.7 の、for-in を使用する非標準の分割代入を廃止しました (Firefox バグ 1083498)。
* for...in ループで、非標準の初期化式を無視してコンソールに警告を表示するようになりました (Firefox バグ 748550 および Firefox バグ 1164741)。
* Unicode コードポイントのエスケープ書式 `\u{xxxxxx}` をサポートしました (Firefox バグ 320500)。
* `String.prototype.contains` は、`String.prototype.includes` に置き換えられました。`String.prototype.contains` はエイリアスとして維持します (Firefox バグ 1102219)。
* `DataView` コンストラクターを `new` 演算子を伴わない関数として呼び出した場合、ES6 に従って `TypeError` が発生するようになりました。
* Firefox 21 のリグレッションである、`get` トラップを持たずに配列から作成した Proxy が正常に動作しない問題を修正しました。`Proxy` で `get` トラップを定義していない場合は、`Array.length` が `0` を返します。また `set` トラップは呼び出されません。この問題の回避策は、必要ない場合でも `get` トラップを追加することでした。この問題は解決されました (Firefox バグ 895223)。
* ES6 仕様に従い、 `WeakMap.prototype` および `WeakSet.prototype` は通常のオブジェクトに変更しました (Firefox バグ 1055473)。
### インターフェイス/API/DOM

#### 新規 API

* プッシュ API を、実験的に実装しました (Firefox バグ 1038811)。設定項目 `services.push.enabled` で制御しており、デフォルトは無効にしています。

#### ウェブアニメーション API

主に最新の仕様変更に合わせて、ウェブアニメーションの実験的な実装を改良しました:

* `AnimationPlayer.currentTime` (en-US) が設定可能になりました (Firefox バグ 1072037)。
* `Element` で使用できる `Animatable.getAnimationPlayers()` を、`Element.getAnimations()` に改名しました (Firefox バグ 1145246)。
* `Animation` および `AnimationEffect` を、新たに作成した `KeyframeEffectReadOnly` に統合しました (Firefox バグ 1153734)。
* `AnimationPlayer` を `Animation` に改名しました (Firefox バグ 1154615)。
* `AnimationTimeline` (en-US) は、`DocumentTimeline` (en-US) を唯一実装する抽象クラスになりました (Firefox バグ 1152171)。

#### CSSOM

* CSS Font Loading API を、Nightly および Developer Edition ではデフォルトで有効にしました (Firefox バグ 1088437)。Beta および Release では、引き続き無効です。
* `CSSCharsetRule` インターフェイスを削除しました。このオブジェクトは CSSOM で使用できなくなりました (Firefox バグ 1148694)。これは仕様書 (最近の変更) および Chrome の動作に合致します。

#### WebRTC

* WebRTC の `negotiationneeded` (en-US) イベントは、再ネゴシエーション時だけでなく初期ネゴシエーション時にも送るようになりました (Firefox バグ 1149838)。

#### DOM & HTML DOM

* 最新の仕様書の要求に従い、`srcset` をパースできないときに `HTMLImageElement.currentSrc` メソッドは `null` ではなく `""` を返すようになりました (Firefox バグ 1139560)。
* 画像と同様に、Firefox は非表示の `<iframe>` に対して `Window.requestAnimationFrame()` を抑制するようになりました (Firefox バグ 1145439)。
* `Navigator.taintEnabled` (en-US) はウェブワーカーで使用できなくなりました (Firefox バグ 1154878)。

#### ウェブオーディオ API

ウェブオーディオ API の新たな拡張です。

* `AudioContext.state`、`AudioContext.onstatechange` プロパティと `AudioContext.suspend()`、`AudioContext.resume()`、`AudioContext.close()` メソッドを実装しました (Firefox バグ 1094764)。
* `AudioBufferSourceNode` に `AudioBufferSourceNode.detune` k-rate 属性を実装しました (Firefox バグ 1153783)。

#### ウェブワーカー

* サービスワーカー API を少々改良しました。`update()` メソッドを、`ServiceWorkerGlobalScope` から `ServiceWorkerRegistration` に移動しました (Firefox バグ 1131350)。
* `ServiceWorkerRegistration` をウェブワーカーで使用できます (Firefox バグ 1131327)。
* `DataStore` をウェブワーカーで使用できます (Firefox バグ 916196)。

#### IndexedDB

* `IDBTransaction` は、デフォルトで永続的ではなくなりました (Firefox バグ 1112702)。これは信頼性よりパフォーマンスを重視するものであり、また他のブラウザの動作に合致します。詳しくは durability の定義をご覧ください。

#### 開発者ツール

* `console.timeStamp` プロパティを追加しました (Firefox バグ 922221)。
### MathML

*変更なし。*

### SVG

*変更なし。*

### Audio/Video

*変更なし。*

ネットワーク
------

*変更なし。*

セキュリティ
------

* CSP でアスタリスク (`*`) を使用した場合に、`data:`、`blob:`、`:filesystem` の各スキーマは提供元のマッチング対象に含まれなくなりました。これらのスキーマを CSP でマッチさせるには、関連するヘッダで明示的に定義しなければなりません (Firefox バグ 1086999)。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### XUL

* 透過したトップレベル window を生成することができなくなりました (Firefox バグ 1162649)。
### JavaScript コードモジュール

* Dict.jsm を削除しました (Firefox バグ 1123309)。代わりに `Map` を使用してください。
### XPCOM

* `nsClassInfo::GetImplementationLanguage()` 関数とともに `nsIClassInfo.implementationLanguage` 属性を削除しました。
* 以下の XPCOM インターフェイスを削除しました。代わりに標準 HTML インターフェイスを使用してください。
    + `nsIDOMHTMLBRElement`
    + `nsIDOMDivElement`
    + `nsIDOMHTMLHeadingElement`
    + `nsIDOMHTMLTableCaptionElement`
    + `nsIDOMHTMLTableElement`
    + `nsIDOMHTMLTitleElement`
### その他

* Keywords API は非推奨になりました。まもなく削除します (Firefox バグ 1140395)。
* 自動テストシステムで、個体テスト関数のスキップをサポートしました。Conditionally running a test の XPCShell testing をご覧ください。
過去のバージョン
--------

* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers
* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers
* Firefox 33 for developers
* Firefox 32 for developers
* Firefox 31 for developers
* Firefox 30 for developers
* Firefox 29 for developers
* Firefox 28 for developers
* Firefox 27 for developers
* Firefox 26 for developers
* Firefox 25 for developers
* Firefox 24 for developers
* Firefox 23 for developers
* Firefox 22 for developers
* Firefox 21 for developers
* Firefox 20 for developers
* Firefox 19 for developers
* Firefox 18 for developers
* Firefox 17 for developers
* Firefox 16 for developers
* Firefox 15 for developers
* Firefox 14 for developers
* Firefox 13 for developers
* Firefox 12 for developers
* Firefox 11 for developers
* Firefox 10 for developers
* Firefox 9 for developers