Element: gotpointercapture 事件

Baseline 已廣泛支援

此特性已經十分成熟,可在許多裝置和瀏覽器版本上使用。自 2020 年 7 月以來,它已在各大瀏覽器中可用。

當一個元素使用 setPointerCapture() 捕獲一個指標時,會觸發 gotpointercapture 事件。

語法

在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。

js
addEventListener("gotpointercapture", (event) => { })

ongotpointercapture = (event) => { }

事件型別

一個 PointerEvent。繼承自 Event

Event UIEvent MouseEvent PointerEvent

事件屬性

此介面繼承自 MouseEventEvent 的屬性。

PointerEvent.altitudeAngle 只讀 實驗性

表示感測器(指標或手寫筆)軸與裝置螢幕的 X-Y 平面之間的角度。

PointerEvent.azimuthAngle 只讀 實驗性

表示 Y-Z 平面與包含感測器(指標或手寫筆)軸和 Y 軸的平面之間的角度。

PointerEvent.persistentDeviceId 只讀 實驗性

生成 PointerEvent 的指向裝置的唯一識別符號。

PointerEvent.pointerId 只讀

導致事件的指標的唯一識別符號。

PointerEvent.width 只讀

指標接觸幾何的寬度(X 軸上的大小),以 CSS 畫素為單位。

PointerEvent.height 只讀

指標接觸幾何的高度(Y 軸上的大小),單位為 CSS 畫素。

PointerEvent.pressure 只讀

指標輸入在 01 範圍內的歸一化壓力,其中 01 分別表示硬體能夠檢測到的最小和最大壓力。

PointerEvent.tangentialPressure 只讀

指標輸入(也稱為筒壓或圓柱應力)在 -11 範圍內的歸一化切向壓力,其中 0 是控制的中間位置。

PointerEvent.tiltX 只讀

Y-Z 平面與包含指標(例如筆手寫筆)軸和 Y 軸的平面之間的平面角(以度為單位,範圍為 -9090)。

PointerEvent.tiltY 只讀

X–Z 平面與包含指標(例如,筆尖)軸和 X 軸的平面之間的平面角度(以度為單位,範圍為 -9090)。

PointerEvent.twist 只讀

指標(例如筆手寫筆)圍繞其主軸的順時針旋轉角度,以度為單位,值為 0359

PointerEvent.pointerType 只讀

指示導致事件的裝置型別(滑鼠、筆、觸控等)。

PointerEvent.isPrimary 只讀

指示此指標是否表示此指標型別的主要指標。

示例

此示例獲取一個 <p> 元素並監聽 gotpointercapture 事件。然後,在 pointerdown 事件上呼叫元素的 setPointerCapture(),這將觸發 gotpointercapture

js
const para = document.querySelector("p");

para.addEventListener("gotpointercapture", () => {
  console.log("I've been captured!");
});

para.addEventListener("pointerdown", (event) => {
  para.setPointerCapture(event.pointerId);
});

使用 ongotpointercapture 事件處理程式屬性的相同示例

js
const para = document.querySelector("p");

para.ongotpointercapture = () => {
  console.log("I've been captured!");
};

para.addEventListener("pointerdown", (event) => {
  para.setPointerCapture(event.pointerId);
});

規範

規範
指標事件
# the-gotpointercapture-event
指標事件
# dom-globaleventhandlers-ongotpointercapture

瀏覽器相容性

另見