此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Element:pointerout 事件

基线
广泛可用

自 2020年7月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

pointerout 事件会因为某些原因触发,包括:定点设备移出了元素的命中测试边界;在不支持悬停的设备上触发了 pointerup 事件(参见 pointerup);在触发 pointercancel 事件后被触发(参见 pointercancel);触控笔离开了数位板可探测的悬停范围。

pointerout 事件具有和 mouseout 事件相同的问题。如果目标元素拥有子元素,pointerout 和 pointerover 事件在指针移动到这些子元素的边界之上时也会激发,而不仅仅是在目标元素本身上激发。通常来说,pointerenter 和 pointerleave 事件的行为更合理,因为它们不受指针移入子元素的影响。

语法

在 addEventListener() 中使用此事件名称:

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

或者,对接口的事件处理器属性赋值:

js
onpointerout = (event) => { }

事件类型

PointerEvent。继承自 Event。

Event UIEvent MouseEvent PointerEvent

示例

使用 addEventListener():

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

para.addEventListener("pointerout", (event) => {
  console.log("指针移出了");
});

使用 onpointerout 事件处理器属性(但请注意,这会替换掉之前使用 onpointerout 添加的其他事件监听器,如存在的话):

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

para.onpointerout = (event) => {
  console.log("指针移出了");
};

规范

规范
Pointer Events
# pointerout
Pointer Events
# dom-globaleventhandlers-onpointerout

浏览器兼容性

参见