--- title: PointerEvent.isPrimary slug: Web/API/PointerEvent/isPrimary tags: - API - DOM - Interface - PointerEvent - Property - Reference translation_of: Web/API/PointerEvent/isPrimary ---
{{domxref("PointerEvent")}} インターフェイスの isPrimary
読み取り専用プロパティは、イベントを作成したポインタデバイスがプライマリポインタであるかどうかを示します。 イベントの発生原因となったポインタがプライマリデバイスの場合は true
を返し、それ以外の場合は false
を返します。
マルチポインタのシナリオ(複数のタッチ点をサポートするタッチ画面など)では、このプロパティを使用して、各ポインタタイプのアクティブポインタのセットからマスタポインタを識別します。 プライマリポインタのみが互換性マウスイベントを生成します。 単一のポインタによる相互作用のみを希望する作成者は、非プライマリポインタを無視することによってそれを達成することができます。
マウスデバイスを表すポインタの場合、ポインタはプライマリと見なされます。 ペン入力を表す他のアクティブポインタが存在しないときに、その {{event("pointerdown")}} イベントが送出された場合、ペン入力を表すポインタはプライマリペン入力と見なされます。 タッチ入力を表す他のアクティブポインタが存在しないときに、その {{event("pointerdown")}} イベントが送出された場合、タッチ入力を表すポインタはプライマリタッチ入力と見なされます。
2つ以上のポインタデバイスタイプが同時に使用されている場合、複数のポインタ(各 {{domxref("PointerEvent.pointerType", "pointerType")}} に1つ)がプライマリと見なされます。 例えば、タッチ接触とマウスカーソルが同時に動かされると、両方ともプライマリと見なされるポインタが生成されます。 複数のプライマリポインタがある場合、これらのポインタはすべて互換性マウスイベントを生成します(ポインタ、マウス、およびタッチの相互作用の詳細については、{{domxref("Pointer events")}} を参照)。
var isPrimary = pointerEvent.isPrimary;
isPrimary
true
を返し、そうでない場合は false
を返します。この例は、isPrimary
の値を使用して適切な処理関数を呼び出す方法を示しています。
target.addEventListener('pointerdown', function(event) { if (event.isPrimary) process_primary_pointer(event); else process_secondary_pointer(event); }, false);
仕様 | 状態 | コメント |
---|---|---|
{{SpecName('Pointer Events 2','#widl-PointerEvent-isPrimary', 'isPrimary')}} | {{Spec2('Pointer Events 2')}} | 不安定版 |
{{SpecName('Pointer Events', '#widl-PointerEvent-isPrimary', 'isPrimary')}} | {{Spec2('Pointer Events')}} | 初期定義 |
{{Compat("api.PointerEvent.isPrimary")}}