PointerEvent

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2020.

L'interface PointerEvent représente les données de l'état d'un évènement du DOM produit par un pointeur, tels que la géométrie du point de contact, le type d'appareil qui a généré l'évènement, l'intensité de pression qui a été appliquée au contact de la surface, etc.

Un pointeur est une représentation agnostique de tout appareil de saisie (tels qu'une souris, un stylet, ou un point de contact sur une surface tactile). Le pointeur peut cibler des coordonnées spécifiques (ou une collection de coordonnées) sur la surface de contact telle qu'un écran.

Le test de ciblage d'un pointeur est le processus qu'un navigateur utilise pour déterminer l'élément pour un évènement de pointeur. Typiquement, cela est déterminé en considérant la position du pointeur ainsi que l'agencement visuel des éléments dans un document sur l'écran.

Constructeurs

PointerEvent()

Crée un PointerEvent synthétique et anonyme.

Propriétés

Cette interface hérite des proprétés de MouseEvent et Event.

PointerEvent.pointerId Lecture seule

Un identifiant unique pour le pointeur ayant provoqué l'évènement.

PointerEvent.width Lecture seule

La largeur (magnitude sur l'axe X), en pixels CSS, de la géométrie de contact du pointeur.

PointerEvent.height Lecture seule

La hauteur (magniture sur l'axe Y), en pixels CSS, de la géométrie de contact du pointeur.

PointerEvent.pressure Lecture seule

La pressure normalisée de l'influx du pointeur dans un intervalle compris entre 0 et 1, où 0 et 1 représentent respectivement la pression minimale et maximale que l'appareil est capable de détecter.

PointerEvent.tangentialPressure Lecture seule

La pression tangentielle normalisée d'un influx de pointeur (également nommée compression ou contrainte cylindrique), où 0 et 1 représentent respectivement la pression minimale et maximale que l'appareil est capable de détecter.

PointerEvent.tiltX Lecture seule

Le plan de l'angle (en dégrés, dans un intervalle compris entre -90 et 90) entre le plan Y-Z et le plan contenant à la fois l'axe du transducteur (ex. : un crayon stylet) et l'axe Y.

PointerEvent.tiltY Lecture seule

Le plan de l'angle (en dégrés, dans un intervalle compris entre -90 et 90) entre le plan X-Z et le plan contenant à la fois l'axe du transducteur (ex. : un crayon stylet) et l'axe X.

PointerEvent.twist Lecture seule

La rotation en degrés et dans le sens des aiguilles d'une montre, d'un transducteur (ex. : crayon stylet) autour de axe principal, avec une valeur comprise dans un intervalle entre 0 et 359.

PointerEvent.pointerType Lecture seule

Indique le type d'appareil qui a provoqué l'évènement (souris, stylet, touché, etc.)

PointerEvent.isPrimary Lecture seule

Indique si le pointeur est le principal appareil de ce type.

Methods

PointerEvent.getCoalescedEvents() Obsolète

Retourne une séquence de toutes les instances de PointerEvent qui ont été dirigées vers l'évènement pointermove envoyé.

Types d'évènements de pointeur

L'interface PointerEvent a plusieurs types d'évènements. Pour déterminer quel évènement s'est produit, regardez la propriété type de l'évènement.

Note : Il est important de remarquer que dans beaucoup de cas, à la fois les évènements du pointeur et de la souris sont envoyés (afin de laisser la logique interagir avec l'utilisateur même lorsqu'elle n'est pas spécifique à un type de pointeur) . Si vous utilisez les évènements de pointeur, vous devez exécuter event.preventDefault() afin d'empêcher l'évènement de la souris d'être également envoyée.

pointerover

Cet évènement est déclenché lorsqu'un appareil de pointage est déplacé vers la zone du test de ciblage d'un élément.

pointerenter

Cet évènement est déclenché lorsqu'un appareil de pointage est déplacé vers la zone du test de ciblage d'un élément ou l'un de ses descendants, ce qui inclut un évènement de pointage vers le bas d'un appareil qui ne propose pas de fonctionnalité de survol (voir pointage vers le bas). Ce type d'évènement est similaire à un pointage par dessus, mais se différencie en ne faisant pas circuler l'évènement.

pointerdown

L'évènement est déclenché lorsqu'un pointeur devient actif. Pour une souris, il est déclenché lorsque l'appareil passe d'aucun bouton pressé à au moins un bouton pressé. Pour un touché, il est déclenché lorsqu'un contact physique est effectué avec le numériseur. Pour un stylet, il est déclenché au contact de ce dernier avec le numériseur.

pointermove

Cet évènement est déclenché lorsqu'un pointeur change de coordonnées.

pointerup

Cet événement est déclenché lorsqu'un pointeur n'est plus actif.

pointercancel

Un navigateur déclenche cet évènement s'il conclut que le pointeur ne sera plus capable de générer des évènements (par exemple, l'appareil concerné a été désactivé).

pointerout

Cet évènement est déclenché pour plusieurs raisons qui incluent : l'appareil de pointage est déplacé en dehors de la zone du test de ciblage d'un élément; déclencher l'évènement de pointage vers le haut pour un appareil qui ne supporte pas le survol (voir pointage vers le haut); après avoir déclenché un évènement de pointage annulé (voir pointage annulé); lorsqu'un stylet quitte la zone de portée pour être détectée au survol par le numériseur.

pointerleave

Cet évènement est déclenché lorsqu'un appareil de pointage est déplacé en dehors de la zone de ciblage d'un élément. Pour les appareils avec un stylet, cet évènement est déclenché lorsque le stylet quitte la zone de portée pour être détectée au survol par le numériseur.

gotpointercapture

Cet évènement est déclenché lorsqu'un élément est capturé par un pointeur.

lostpointercapture

Cet évènement est déclenché après qu'un pointeur ait relâché sa capture.

GlobalEventHandlers

Exemple

Un exemple de chaque propriété, type d'évènement, et un gestionnaire d'évènements global sont inclus dans leur page respective de référence.

Spécifications

Specification
Pointer Events
# pointerevent-interface

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi