recursal/MDN huggingface dataset:
SpeechRecognition: end イベント
===========================

**`end`** はウェブ音声 API の
 `SpeechRecognition` オブジェクトのイベントで、音声認識サービスが切断された時に発生します。

構文
--

このイベント名を `addEventListener()` などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。


```js
addEventListener("end", (event) => {});

onend = (event) => {};
```

イベント型
-----

一般的な `Event` であり、追加のプロパティはありません。

例
-

`end` イベントは、 `addEventListener` メソッドで使用することができます。


```js
const recognition = new webkitSpeechRecognition() || new SpeechRecognition();

recognition.addEventListener("end", () => {
  console.log("音声認識サービスを切断しました。");
});
```


または `onend` イベントハンドラープロパティを使用してください。


```js
recognition.onend = () => {
  console.log("音声認識サービスを切断しました。");
};
```

仕様書
---

| Specification |
| --- |
| Web Speech API # eventdef-speechrecognition-end |
| Web Speech API # dom-speechrecognition-onend |

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

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

関連情報
----

* ウェブ音声 API
SpeechRecognition: soundstart イベント
==================================

**`soundstart`** はウェブ音声 API のイベントで、何らかの音（認識できる音声、できない音声にかかわらず）が検出できた時に発生します。

構文
--

このイベント名を `addEventListener()` などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。


```js
addEventListener("soundstart", (event) => {});

onsoundstart = (event) => {};
```

イベント型
-----

一般的な `Event` であり、追加のプロパティはありません。

例
-

`soundstart` イベントは、 `addEventListener` メソッドで使用することができます。


```js
const recognition = new webkitSpeechRecognition() || new SpeechRecognition();

recognition.addEventListener("soundstart", () => {
  console.log("音を受信し始めました");
});
```


または `onsoundstart` イベントハンドラープロパティを使用してください。


```js
recognition.onsoundstart = () => {
  console.log("音を受信し始めました");
};
```

仕様書
---

| Specification |
| --- |
| Web Speech API # eventdef-speechrecognition-soundstart |
| Web Speech API # dom-speechrecognition-onsoundstart |

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

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

関連情報
----

* ウェブ音声 API
SpeechRecognition.maxAlternatives
=================================

**`maxAlternatives`** は `SpeechRecognition` インターフェイスのプロパティで、 `SpeechRecognitionResult` (en-US) ごとに提供される `SpeechRecognitionAlternative` の最大数を設定します。

既定値は `1` です

値
-

数値で、それぞれの結果に対して返される選択肢の最大値を表します。

例
-

下記のソースコードは Speech color changer を参考しています。


```js
const grammar =
  "#JSGF V1.0; grammar colors; public <color> = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;";
const recognition = new SpeechRecognition();
const speechRecognitionList = new SpeechGrammarList();
speechRecognitionList.addFromString(grammar, 1);
recognition.grammars = speechRecognitionList;
//recognition.continuous = false;
recognition.lang = "en-US";
recognition.interimResults = false;
recognition.maxAlternatives = 1;

// ...
```

仕様書
---

| Specification |
| --- |
| Web Speech API # dom-speechrecognition-maxalternatives |

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

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

関連情報
----

* ウェブ音声 API
SpeechRecognition.continuous
============================

**`continuous`** は `SpeechRecognition` インターフェイスのプロパティで、認識が行われるたびに、継続的に結果を返すのか、あるいは単一の結果のみ返すのかを制御します。

既定では単一の結果 (`false`) です。

### 値

論理値で、現在の `SpeechRecognition` の継続の状態を表します。`true` の場合は継続的で、`false` の場合は継続的ではありません（単一の結果を都度返します）。

例
-

下記のソースコードは Speech color changer を参考しています。


```js
const grammar =
  "#JSGF V1.0; grammar colors; public <color> = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;";
const recognition = new SpeechRecognition();
const speechRecognitionList = new SpeechGrammarList();
speechRecognitionList.addFromString(grammar, 1);
recognition.grammars = speechRecognitionList;
recognition.continuous = false;
recognition.lang = "en-US";
recognition.interimResults = false;
recognition.maxAlternatives = 1;

// ...
```

仕様書
---

| Specification |
| --- |
| Web Speech API # dom-speechrecognition-continuous |

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

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

関連情報
----

* ウェブ音声 API
SpeechRecognition: speechstart イベント
===================================

**`speechstart`** はウェブ音声 API のイベントで、音声認識サービスにより音声として認識された音が検出されたときに発行されます。

構文
--

このイベント名を `addEventListener()` などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。


```js
addEventListener("speechstart", (event) => {});

onspeechstart = (event) => {};
```

イベント型
-----

一般的な `Event` であり、追加のプロパティはありません。

例
-

`speechstart` イベントは、 `addEventListener` メソッドで使用することができます。


```js
const recognition = new webkitSpeechRecognition() || new SpeechRecognition();

recognition.addEventListener("speechstart", () => {
  console.log("音声が検出されました");
});
```


または `onspeechstart` イベントハンドラープロパティを使用してください。


```js
recognition.onspeechstart = () => {
  console.log("音声が検出されました");
};
```

仕様書
---

| Specification |
| --- |
| Web Speech API # eventdef-speechrecognition-speechstart |
| Web Speech API # dom-speechrecognition-onspeechstart |

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

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

関連情報
----

* ウェブ音声 API
SpeechRecognition: speechend イベント
=================================

**`speechend`** はウェブ音声 API のイベントで、音声認識サービスで認識された音声が検出されなくなったときに発行されます。

構文
--

このイベント名を `addEventListener()` などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。


```js
addEventListener("speechend", (event) => {});

onspeechend = (event) => {};
```

イベント型
-----

一般的な `Event` であり、追加のプロパティはありません。

例
-

`speechend` イベントは、 `addEventListener` メソッドで使用することができます。


```js
const recognition = new webkitSpeechRecognition() || new SpeechRecognition();

recognition.addEventListener("speechend", () => {
  console.log("音声が検出されなくなりました");
});
```


または `onspeechend` イベントハンドラープロパティを使用してください。


```js
recognition.onspeechend = () => {
  console.log("音声が検出されなくなりました");
};
```

仕様書
---

| Specification |
| --- |
| Web Speech API # eventdef-speechrecognition-speechend |
| Web Speech API # dom-speechrecognition-onspeechend |

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

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

関連情報
----

* ウェブ音声 API
SpeechRecognition: soundend イベント
================================

**`soundend`** はウェブ音声 API のイベントで、何らかの音（認識できる音声、できない音声にかかわらず）が検出し終えた時に発生します。

構文
--

このイベント名を `addEventListener()` などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。


```js
addEventListener("soundend", (event) => {});

onsoundend = (event) => {};
```

イベント型
-----

一般的な `Event` であり、追加のプロパティはありません。

例
-

`soundend` イベントは、 `addEventListener` メソッドで使用することができます。


```js
const recognition = new webkitSpeechRecognition() || new SpeechRecognition();

recognition.addEventListener("soundend", (event) => {
  console.log("音が受信できなくなりました");
});
```


または `onsoundend` イベントハンドラープロパティを使用してください。


```js
recognition.onsoundend = (event) => {
  console.log("音が受信できなくなりました");
};
```

仕様書
---

| Specification |
| --- |
| Web Speech API # eventdef-speechrecognition-soundend |
| Web Speech API # dom-speechrecognition-onsoundend |

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

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

関連情報
----

* ウェブ音声 API
SpeechRecognition.lang
======================


**`lang`** は `SpeechRecognition` インターフェイスのプロパティで、現在の `SpeechRecognition` の言語を返します。指定されていない場合、 HTML の `lang` 属性を返し、またそれも指定されていない場合、ユーザーエージェントの言語の設定を返します。
### 値

文字列で、現在の `SpeechRecognition` での BCP 47 言語タグを表します。

例
-

下記のソースコードは Speech color changer を参考しています


```js
const grammar =
  "#JSGF V1.0; grammar colors; public <color> = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;";
const recognition = new SpeechRecognition();
const speechRecognitionList = new SpeechGrammarList();
speechRecognitionList.addFromString(grammar, 1);
recognition.grammars = speechRecognitionList;
//recognition.continuous = false;
recognition.lang = "en-US";
recognition.interimResults = false;
recognition.maxAlternatives = 1;

// ...
```

仕様書
---

| Specification |
| --- |
| Web Speech API # dom-speechrecognition-lang |

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

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

関連情報
----

* ウェブ音声 API
Client: url プロパティ
=================

**`url`** は `Client` インターフェイスの読み取り専用プロパティで、現在のサービスワーカークライアントの URL を返します。

### 値

文字列です。

例
-


```js
self.addEventListener("notificationclick", (event) => {
  console.log("On notification click: ", event.notification.tag);
  event.notification.close();

  // これは、クライアントが既に開いているかどうかを確認し、
  // 開いている場合にフォーカスを合わせます
  event.waitUntil(
    clients
      .matchAll({
        type: "window",
      })
      .then((clientList) => {
        for (const client of clientList) {
          if (client.url === "/" && "focus" in client) {
            return client.focus();
          }
        }
        if (clients.openWindow) {
          return clients.openWindow("/");
        }
      }),
  );
});
```

仕様
--

| Specification |
| --- |
| Service Workers # client-url |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Client: frameType プロパティ
=======================

**`frameType`** は `Client` インターフェイスの読み取り専用プロパティで、現在の `Client` の閲覧コンテキストの種類を示します。この値は、`"auxiliary"`、`"top-level"`、`"nested"`、`"none"` の何れかです。

値
-

4 つの文字列、`"auxiliary"`、`"top-level"`、`"nested"`、`"none"` の何れかになります。

仕様書
---

| Specification |
| --- |
| Service Workers # client-frametype |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Client: postMessage() メソッド
==========================

**`postMessage()`** は `Client` インターフェイスのメソッドで、サービスワーカーがクライアント (`Window`, `Worker`, `SharedWorker`) にメッセージを送信することができます。メッセージは、`navigator.serviceWorker` の "`message`" イベントで受信されます。

構文
--


```js
postMessage(message)
postMessage(message, transferables)
```

### 引数

`message`

クライアントに送信するメッセージです。これは、任意の構造化複製可能型にすることができます。

`transfer` 省略可

メッセージとともに転送されるオブジェクトのシーケンスです。 これらのオブジェクトの所有権は宛先側に与えられ、送信側では使用できなくなります。

### 返値

なし (`undefined`)。

例
-

サービスワーカーからクライアントへのメッセージの送信


```js
addEventListener("fetch", (event) => {
  event.waitUntil(
    (async () => {
      // クライアントにアクセスできない場合は、早期に終了します。
      // 例えば、クロスオリジンの場合。
      if (!event.clientId) return;

      // クライアントを取得します。
      const client = await clients.get(event.clientId);
      // クライアントを取得できない場合は、早期に終了します。
      // 例えば、閉じている場合。
      if (!client) return;

      // クライアントにメッセージを送信します。
      client.postMessage({
        msg: "私はあなたからフェッチされましたよ！",
        url: event.request.url,
      });
    })(),
  );
});
```


そのメッセージの受け取り


```js
navigator.serviceWorker.addEventListener("message", (event) => {
  console.log(event.data.msg, event.data.url);
});
```

仕様書
---

| Specification |
| --- |
| Service Workers # dom-client-postmessage-message-options |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Client: type プロパティ
==================

**`type`** は `Client` インターフェイスの読み取り専用プロパティで、サービスワーカーが制御しているクライアントの種類を示します。

### 値

クライアントの種類を表す文字列。 値は次のいずれかです。

* `"window"`
* `"worker"`
* `"sharedworker"`
例
-


```js
// サービスワーカークライアント（文書など）
function sendMessage(message) {
  return new Promise((resolve, reject) => {
    // これは ServiceWorker.postMessage バージョンであることに注意してください
    navigator.serviceWorker.controller.postMessage(message);
    window.serviceWorker.onMessage = (e) => {
      resolve(e.data);
    };
  });
}

// 制御するサービスワーカー
self.addEventListener("message", (e) => {
  // e.source はクライアントオブジェクトです
  e.source.postMessage(`こんにちは！ あなたのメッセージは: ${e.data}`);
  // type 値も投稿してクライアントに戻しましょう
  e.source.postMessage(e.source.type);
});
```

仕様
--

| Specification |
| --- |
| Service Workers # client-type |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
Client: id プロパティ
================

**`id`** は `Client` インターフェイスの読み取り専用プロパティで、`Client` オブジェクトの汎用一意識別子を返します。

値
-

固有にオブジェクトを識別する文字列です。

仕様書
---

| Specification |
| --- |
| Service Workers # client-id |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
HTMLCollection: item() メソッド
===========================

`HTMLCollection` の `item()` メソッドは、この集合の中で指定された位置にあるノードを返します。

**メモ:** `HTMLCollection` の中身はライブであるため、その背景にある DOM が変化すると、子の集合内にある個々のノードの位置は変化する可能性があり、インデックス値が指定されたノードを差し続けなくなる可能性があります。

構文
--


```js
item(index)
```

### 引数

`index`

返す `Node` の位置。要素は `HTMLCollection` 内で、文書内のソースに現れる順序と同じ順序で現れます。

### 返値

指定したインデックスにある `Node`、または `index` が 0 より小さいか length プロパティ以上の場合は `null` です。

使用上の注意
------

`item()` メソッドは `HTMLCollection` から番号付けされた要素を返します。JavaScript で `HTMLCollection` を配列として扱い、配列記法を使用してインデックスを作成する方が簡単です。下記の例を参照してください。

例
-


```js
const images = document.images; // これは HTMLCollection
const img0 = images.item(0); // このように item() メソッドを使うことができる
const img1 = images[1]; // ただし、この記述方がより易しく一般的
```

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

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

関連情報
----

* `NodeList.item()`
HTMLCollection: namedItem() メソッド
================================

**`namedItem()`** は `HTMLCollection` インターフェイスのメソッドで、この集合の中で `id` または `name` 属性が指定された名前に一致する `Element` の先頭のものを返します。一致する要素がなければ `null` を返します。

JavaScript では、配列のブラケット記法を`文字列`で `collection["value"]` のように使用すると、`collection.namedItem("value")` と同等になります。

構文
--


```js
namedItem(key)
```

### 引数

* `key` は文字列で、探している要素の `id` または `name` 属性の値を表します。
### 返値

* `item` は `HTMLCollection` の中で *key* に一致する最初の `Element` です。または、存在しない場合は `null` です。
例
-

### HTML


```html
<div id="personal">
  <span name="title">Dr.</span>
  <span name="firstname">Carina</span>
  <span name="lastname">Anand</span>
  <span id="degree">(MD)</span>
</div>
```

### JavaScript


```js
const container = document.getElementById("personal");

// "title" という名前の HTMLSpanElement を返す。そのような要素が存在しない場合は null を返す。
const titleSpan = container.children.namedItem("title");

// 以下の変化形は、name や id が一致する要素がない場合、null ではなく undefined を返す
const firstnameSpan = container.children["firstname"];
const lastnameSpan = container.children.lastname;

// id が "degree" である span 要素を返す
const degreeSpan = container.children.namedItem("degree");

const output = document.createElement("div");
output.textContent = `Result: ${titleSpan.textContent} ${firstnameSpan.textContent} ${lastnameSpan.textContent} ${degreeSpan.textContent}`;

container.insertAdjacentElement("afterend", output);
```

### 結果

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-htmlcollection-nameditem-key |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
HTMLCollection: length プロパティ
============================

**`HTMLCollection.length`** プロパティは、`HTMLCollection` の中にあるアイテム数を返します。

値
-

整数の値で、`HTMLCollection` の中にあるアイテムの数を表します。

例
-

`length` プロパティは DOM プログラミングで有益なことが多いです。リストがすべて存在するかどうかを確認するために、リストの長さをテストするために良く使用されます。また、この例のように `for` ループのイテレーターとしてもよく使用されます。


```js
// 文書内でクラス ".test" を持つすべての要素
const items = document.getElementsByClassName("test");

// リスト内の各テスト項目について、要素全体をHTMLの文字列として追加します。
let gross = "";
for (let i = 0; i < items.length; i++) {
  gross += items[i].innerHTML;
}

// gross は test 要素の HTML になります。
```

仕様書s
----

| Specification |
| --- |
| DOM Standard # ref-for-dom-htmlcollection-length① |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
MIDIMessageEvent: MIDIMessageEvent() コンストラクター
=============================================

**安全なコンテキスト用:** この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

**`MIDIMessageEvent()`** コンストラクターは、新しい `MIDIMessageEvent` オブジェクトを生成します。イベントは `MIDIInput` が 1 個以上の MIDI メッセージの受信を完了した時に生成されるため、通常このコンストラクターは使用されません。

構文
--


```js
new MIDIMessageEvent(type)
new MIDIMessageEvent(type, options)
```

### 引数

`type`

イベントの名前を表す文字列です。大文字と小文字は区別され、ブラウザーは常に `MIDIMessageEvent` に設定します。

`options` 省略可

*`Event()` で定義されたプロパティに加えて*、以下のプロパティを持ちうるオブジェクトです。

`data`

MIDI メッセージのデータバイト列が格納された `Uint8Array` のインスタンスです。


### 返値

新しい `MIDIMessageEvent` オブジェクトを返します。

仕様書
---

| Specification |
| --- |
| Web MIDI API # dom-midimessageevent-constructor |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
MIDIMessageEvent: data プロパティ
============================

**安全なコンテキスト用:** この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

`MIDIMessageEvent` インターフェイスの読み取り専用プロパティ **`data`** は、1 個の MIDI メッセージの MIDI データバイト列を返します。

値
-

`Uint8Array` です。

例
-

以下の例では、すべての入力ポートで `midimessage` イベントを監視します。メッセージを受信したら、`data` の値をコンソールに出力します。


```js
inputs.forEach((input) => {
  input.onmidimessage = (message) => {
    console.log(message.data);
  };
});
```

仕様書
---

| Specification |
| --- |
| Web MIDI API # dom-midimessageevent-data |

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

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

**`width`** は `PointerEvent` インターフェイスの読み取り専用プロパティで、CSS ピクセルで測定された、x 軸に沿ったポインターの接触形状の幅を表します。 ポインター機器のソース（指など）に応じて、特定のポインターに対して、各イベントは異なる値を生成することがあります。

入力ハードウェアが接触形状をブラウザーに報告できない場合、幅の既定値は `1` です。

値
-

このイベントの接触領域の幅（CSS ピクセル単位）。

例
-

この例では、`PointerEvent` インターフェイスの `width` プロパティと `height` プロパティを使用して接触面積を計算する方法を示します。


```js
target.addEventListener(
  "pointerdown",
  (ev) => {
    // 接触面積を計算する
    const area = ev.width \* ev.height;
  },
  false,
);
```

仕様書
---

| Specification |
| --- |
| Pointer Events # dom-pointerevent-width |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
PointerEvent.getCoalescedEvents()
=================================

**`getCoalescedEvents()`** は `PointerEvent` インターフェイスのメソッドで、送出された `pointermove` イベントに合成されるすべての `PointerEvent` インスタンスの列を返します。

構文
--


```js
getCoalescedEvents()
```

### 引数

なし。

### 返値

`PointerEvent` インスタンスの列。

仕様書
---

| Specification |
| --- |
| Pointer Events # dom-pointerevent-getcoalescedevents |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
PointerEvent()
==============

**`PointerEvent()`** コンストラクターは、新しい信頼できない合成 `PointerEvent` オブジェクトのインスタンスを作成します。

構文
--


```js
new PointerEvent(type)
new PointerEvent(type, options)
```

### 引数

`type`

文字列で、イベントの名前を表します（PointerEvent のイベントの種類を参照）。

`options` 省略可

オブジェクトで、*`MouseEvent()` で定義されているプロパティに加え*、以下のプロパティを設定することができます。

`pointerId`

数値で、既定値は `0` であり、インスタンスの `PointerEvent.pointerId` の値を設定します。

`width`

数値で、既定値は `1` であり、インスタンスの `PointerEvent.width` の値を設定します。

`height`

数値で、既定値は `1` であり、インスタンスの `PointerEvent.height` の値を設定します。

`pressure`

数値で、既定値は `0` であり、インスタンスの `PointerEvent.pressure` の値を設定します。

`tangentialPressure`

数値で、既定値は `0` であり、インスタンスの `PointerEvent.tangentialPressure` の値を設定します。

`tiltX`

数値で、既定値は `0` であり、インスタンスの `PointerEvent.tiltX` の値を設定します。

`tiltY`

数値で、既定値は `0` であり、インスタンスの `PointerEvent.tiltY` の値を設定します。

`twist`

数値で、既定値は `0` であり、インスタンスの `PointerEvent.twist` の値を設定します。

`pointerType`

文字列で、既定値は `""` であり、インスタンスの `PointerEvent.pointerType` の値を設定します。

`isPrimary`

論理値で、既定値は `false` であり、インスタンスの `PointerEvent.isPrimary` の値を設定します。


### 返値

新しい `PointerEvent` オブジェクトです。

例
-


```js
const moveEvent = new PointerEvent("pointermove");

const downEvent = new PointerEvent("pointerdown", {
  pointerId: 1,
  bubbles: true,
  cancelable: true,
  pointerType: "touch",
  width: 100,
  height: 100,
  isPrimary: true,
});
```

仕様書
---

| Specification |
| --- |
| Pointer Events # dom-pointerevent-constructor |

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

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

**`isPrimary`** は `PointerEvent` インターフェイスの読み取り専用プロパティで、イベントを生成したポインター機器が*主*ポインターであるかどうかを示します。 イベントの発生原因となったポインターが主機器である場合は `true` を返し、それ以外の場合は `false` を返します。

マルチポインターのシナリオ（複数のタッチ点に対応するタッチ画面など）では、このプロパティを使用して、各種類のアクティブなポインターの集合から*マスターポインター*を識別します。 主ポインターのみが*互換マウスイベント*を生成します。 単一のポインターによる操作のみを希望する場合は、主ポインターではないものを無視することによって実現することができます。

ポインターがマウスを表している場合、そのポインターが主と見なされます。 ペン入力を表すポインターは、その `pointerdown` イベントが、ペン入力を表す他のアクティブなポインターがないときに送出された場合、主ペン入力と見なされます。タッチ入力を表すポインターは、その `pointerdown` イベントが、タッチ入力を表す他のアクティブなポインターが存在しないときに送出された場合、主タッチ入力と見なされます。

2 種類以上のポインター機器が同時に使用されている場合、複数のポインター（`pointerType` ごとに 1 つ）が主と見なされます。 例えば、タッチ接触とマウスカーソルが同時に動かされると、両方とも主と見なされるポインターが生成されます。 複数の主ポインターがある場合、これらのポインターはすべて*互換マウスイベント*を生成します（ポインター、マウス、およびタッチの相互作用の詳細については、ポインターイベント を参照）。

値
-

論理値で、このイベントのポインターが主ポインターである場合は `true` を返し、そうでない場合は `false` を返します。

例
-

この例は、`isPrimary` の値を使用して、適切な処理関数を呼び出す方法を示しています。


```js
target.addEventListener(
  "pointerdown",
  (event) => {
    if (event.isPrimary) {
      process\_primary\_pointer(event);
    } else {
      process\_secondary\_pointer(event);
    }
  },
  false,
);
```

仕様書
---

| Specification |
| --- |
| Pointer Events # dom-pointerevent-isprimary |

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

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

`PointerEvent` インターフェイスの読み取り専用プロパティである **`height`** は、ポインターの接触ジオメトリーの高さを y 軸に従って表します (CSS ピクセル単位)。またポインターデバイスのソース (指など) によっては、与えられたポインターに対して、各イベントが異なる値を生成することがあります。

入力ハードウェアが接触ジオメトリーをブラウザーに報告できない場合、高さはデフォルトで `1` になります。

値
-

イベントの接触ジオメトリーの高さ (CSS ピクセル単位)。

例
-

このプロパティの例は PointerEvent.width の例に含まれています。

仕様
--

| Specification |
| --- |
| Pointer Events # dom-pointerevent-height |

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

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

**`pressure`** は `PointerEvent` インターフェイスの読み取り専用プロパティで、ポインター入力の正規化された圧力を示します。

値
-

ポインター入力の `0` から `1` までの範囲に正規化された圧力。ここで、`0` と `1` は、それぞれハードウェアが検出できる最小圧力と最大圧力を表します。 マウスなど、圧力に対応していないハードウェアの場合、値はポインターのボタンの状態がアクティブであるときは `0.5`、それ以外のときは `0` です。

例
-

このスニペットでは、`pointerdown` イベントが発生すると、そのイベントの `pressure` プロパティの値に応じてさまざまな関数が呼び出されます。


```js
someElement.addEventListener(
  "pointerdown",
  (event) => {
    if (event.pressure === 0) {
      // 圧力なし
      process\_no\_pressure(event);
    } else if (event.pressure === 1) {
      // 最大圧力
      process\_max\_pressure(event);
    } else {
      // デフォルト
      process\_pressure(event);
    }
  },
  false,
);
```

仕様書
---

| Specification |
| --- |
| Pointer Events # dom-pointerevent-pressure |

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

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

関連情報
----

* `Touch.force`
PointerEvent.tiltX
==================

**`tiltX`** は `PointerEvent` インターフェイスの読み取り専用プロパティで、ポインターの *Y-Z 平面*と画面との間の角度（度単位）です。 このプロパティは通常、ペン/スタイラス型のポインターにのみ役立ちます。

このプロパティの説明については、仕様の図 2 を参照してください。

値
-

ポインター（スタイラス）の Y-Z 平面と画面の間の角度（度単位）。 値の範囲は `-90` から `90` です。 ここで、正の値は右への傾きです。 このプロパティに対応していない機器の場合、値は `0` です。

例
-

この例は、`tiltX` プロパティおよび `tiltY` プロパティへの簡単なアクセスを示しています。


```js
someElement.addEventListener(
  "pointerdown",
  (event) => {
    process\_tilt(event.tiltX, event.tiltY);
  },
  false,
);
```

仕様書
---

| Specification |
| --- |
| Pointer Events # dom-pointerevent-tiltx |

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

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