PointerEvent.pointerType

PointerEvent インターフェイスの pointerType 読み取り専用プロパティは、特定のポインタイベントを引き起こしたデバイスタイプ(マウス、ペン、またはタッチ)を示します。

構文

var pType = pointerEvent.pointerType;

戻り値

pType
イベントのポインタタイプ。 サポートする値は次の文字列です。
 
"mouse"
イベントはマウスデバイスによって生成されました。
"pen"
イベントはペンデバイスまたはスタイラスデバイスによって生成されました。
"touch"
イベントは指などのタッチによって生成されました。

デバイスタイプがブラウザーで検出できない場合、値は空の文字列("")になります。 ブラウザーが上記以外のポインタデバイスタイプをサポートしている場合は、異なるタイプのデバイスと名前が競合しないように、値にベンダー接頭辞を付ける必要があります。

この例は、pointerType プロパティの値を使用して適切なポインタタイプ処理関数を呼び出す方法を示しています。

targetElement.addEventListener('pointerdown', function(event) {
  // 適切なポインタタイプのハンドラを呼び出す
  switch (event.pointerType) {
    case 'mouse': 
      process_pointer_mouse(event); 
      break;
    case 'pen': 
      process_pointer_pen(event); 
      break;
    case 'touch': 
      process_pointer_touch(event); 
      break;
    default:
      console.log(`pointerType ${event.pointerType} はサポートしていません`);
  }
}, false);

仕様

仕様 状態 コメント
Pointer Events
pointerType の定義
廃止された 初期定義
Pointer Events – Level 2
pointerType の定義
勧告 不安定版
CSS Object Model (CSSOM) View Module
MouseEvent の定義
草案 MouseEventlong 型から double 型に再定義します。 これは、pointerType がマウスである PointerEventdouble 型になることを意味します。

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
pointerTypeChrome 完全対応 55Edge 完全対応 12Firefox 完全対応 59
完全対応 59
完全対応 41
無効
無効 From version 41: this feature is behind the dom.w3c_pointer_events.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 完全対応 11
完全対応 11
部分対応 10
補足
補足 Returns an integer enumeration instead of a string.
Opera 完全対応 42Safari 完全対応 13WebView Android 完全対応 55Chrome Android 完全対応 55Firefox Android 完全対応 41
無効
完全対応 41
無効
無効 From version 41: this feature is behind the dom.w3c_pointer_events.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android 完全対応 42Safari iOS 完全対応 13Samsung Internet Android 完全対応 6.0
Fractional coordinates for mouse.Chrome 完全対応 64Edge ? Firefox ? IE ? Opera 完全対応 51Safari ? WebView Android 完全対応 64Chrome Android 完全対応 64Firefox Android ? Opera Android 完全対応 47Safari iOS ? Samsung Internet Android 完全対応 9.0

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。
ユーザーが明示的にこの機能を有効にしなければなりません。
ユーザーが明示的にこの機能を有効にしなければなりません。