# Touch Test

> ブラウザだけで動くタッチパネルテスト。マルチタッチの軌跡、デッドスポットのグリッド、サンプルレート（Hz）を確認できます。Hz はパネルの仕様ではありません。

- URL: https://bytescope.dev/ja/touch-test/
- Locale: ja · Also: [en](https://bytescope.dev/en/touch-test.md) · [zh-Hant](https://bytescope.dev/zh-Hant/touch-test.md)
- Runs: 何もアップロードされません。ポインターイベントはこのタブの中で処理され、外部には送信されません。
- Requires: Any modern browser (Chrome, Edge, Firefox, Safari), desktop and mobile.
- Updated: 2026-09-08

## What it does

このタブの中で完結するタッチスクリーンテストです。指ごとに色と軌跡が付くマルチタッチテスト、サンプルレートの表示、グリッドを塗りつぶすデッドスポットチェックの3つのモードがあります。何もアップロードされません。タッチスクリーンがなくてもマウスで試せます。このページは古い Touch Events API ではなく Pointer Events（`pointerdown` / `pointermove` / `pointerup` / `pointercancel`）を使っています。

### マルチタッチの軌跡

接触点ごとに1色が割り当てられ、指を離すまで同じ色が続きます。「現在の接触数」は今押されている数、「同時最大」はこのセッション中に同時に検出された最大数です。`pointercancel` は指を離した扱いになるため、システムジェスチャーで幽霊の指が画面に残ることはありません。

### サンプルレートはブラウザイベントの値

表示される Hz は、ブラウザがイベントを受け取った頻度です。パネルのハードウェアのタッチレートではありません。ブラウザはポインターイベントをまとめて処理するため、数値はデータシートより低くなります。「このタブがどれくらいの頻度で動きを受け取っているか」の目安として使ってください。工場スペックの検証には使えません。

### デッドスポットのマスはパネルの故障判定ではない

グリッドが記録するのは「そのマスがタッチイベントを受け取った」という事実だけです。塗られていないマスは、速いスワイプが通らなかっただけ、指が浮いただけ、あるいは本当のデッドゾーン、どれの可能性もあります。パネルレベルのドット抜けやデジタイザーの検査ではありません。ガラスを疑う前に、リセットしてゆっくりなぞり直してください。

## Limits

Does not recalibrate the digitiser or fix ghost touches; it shows what the browser receives.

## Machine output

Copy JSON copies an envelope `{ tool, url, generatedAt, userAgentHint, result }`. `tool` is `"touch-test"`; `result` is aggregates only — peak concurrent pointers, sample rate, dead-zone coverage. Pointer trails are omitted.

- `pointerEventsSupported` (boolean | null) — `null` = not probed yet; `false` = probed, no Pointer Events; `true` = present.
- `reportedMaxTouchPoints` (number | null) — `navigator.maxTouchPoints` after mount. `null` = not read yet. `0` is a real report.
- `maxConcurrentPointers` (number | null) — Peak concurrent pointers observed on the canvas. `null` = no pointer-down yet. `1` = measured, single-touch only.
- `totalPointerDowns` (number) — How many `pointerdown`s this session recorded. `0` = none yet.
- `sampleRateHz` (number | null) — Pointer-event sample rate in Hz. `null` = not enough samples.
- `deadZoneCoveragePercent` (number | null) — Dead-zone grid coverage, 0–100. `null` = dead-zone mode has not marked any cell.
- `deadZoneHasUntouchedCells` (boolean | null) — `null` = dead-zone not started; `true` = at least one cell still untouched after some coverage; `false` = every cell was touched.
- `deadZoneUntouchedCellCount` (number | null) — Untouched cell count. `null` = dead-zone not started.
- `deadZoneGridCols` (number | null) — Dead-zone grid column count. `null` = dead-zone not started.
- `deadZoneGridRows` (number | null) — Dead-zone grid row count. `null` = dead-zone not started.

## FAQ

### サンプルレートはパネルのハードウェアのタッチレートですか？

いいえ。ブラウザイベントのサンプルレートです。ブラウザはポインターイベントをまとめるため、表示される Hz はパネルの仕様より低くなります。このタブがどれくらいの頻度で動きを受け取っているかの比較に使ってください。データシートの確認には使えません。

### 塗られていないマスがあれば、画面にデッドスポットがあるということですか？

それだけでは判断できません。グリッドが証明するのは「そのマスがタッチイベントを受け取った」ことだけです。速いスワイプ、浮いた指、本当のデッドゾーンのどれでもマスは空のまま残ります。ハードウェアの故障と判断する前に、リセットしてゆっくりなぞってみてください。

### タッチスクリーンがなくてもマウスで使えますか？

使えます。マウスもポインターイベントを送るので、1点の軌跡、サンプルレート、デッドスポットのグリッドはすべて動きます。この端末の `navigator.maxTouchPoints` はページ上に表示されます。値が 0 の場合、マルチタッチのテストには本物のタッチスクリーンが必要です。

### どのブラウザで動きますか？

Pointer Events に対応するブラウザなら動きます。判定はページの読み込み後に行われるので、バージョン表ではなくこのページの判定結果を信頼してください。解説と FAQ は、ポインターイベントを受け取れないブラウザでも表示されます。

### データが外部に送られることはありますか？

ありません。座標、軌跡、サンプルのタイムスタンプ、カバレッジのグリッドはすべてこのタブの中に留まります。アカウントは不要で、何もアップロードされません。

## Related tools

- [Display & Monitor Test](https://bytescope.dev/ja/screen-test.md) — ドット抜け・バックライト漏れ・バンディング・ガンマ・残像・リフレッシュレートを確認。
- [Mouse Test](https://bytescope.dev/ja/mouse-test.md) — ボタン・チャタリング・スクロールのノッチ・ポーリングレートをテスト。
- [Pen Pressure Test](https://bytescope.dev/ja/pen-pressure-test.md) — 筆圧カーブ・傾き・ペンの回転・筆圧レベルの推定値を確認。
- [Phone Sensor Test](https://bytescope.dev/ja/phone-sensor-test.md) — スマホの加速度センサー・ジャイロ・コンパス・GPS 精度・バイブを確認。
