Element: dblclick 事件
当定点设备按钮(例如鼠标主按钮)被双击时,会触发 dblclick
事件;也就是说,在很短的时间内对单个元素快速点击两次。
dblclick
事件在两次 click
事件之后触发(因此,在两对 mousedown
和 mouseup
事件之后触发)。
语法
在诸如 addEventListener()
之类的方法中使用事件名称,或设置事件处理程序属性。
addEventListener("dblclick", (event) => { })
ondblclick = (event) => { }
事件类型
一个 MouseEvent
。继承自 UIEvent
和 Event
。
事件属性
此接口还继承其父级 UIEvent
和 Event
的属性。
MouseEvent.altKey
只读-
如果鼠标事件触发时 alt 键处于按下状态,则返回
true
。 -
鼠标事件触发时按下的按钮编号(如果适用)。
-
鼠标事件触发时按下的按钮(如果有)。
MouseEvent.clientX
只读-
鼠标指针在视口坐标中的 X 坐标。
MouseEvent.clientY
只读-
鼠标指针在视口坐标中的 Y 坐标。
MouseEvent.ctrlKey
只读-
如果鼠标事件触发时 control 键处于按下状态,则返回
true
。 MouseEvent.layerX
非标准 只读-
返回事件相对于当前图层的水平坐标。
MouseEvent.layerY
非标准 只读-
返回事件相对于当前图层的垂直坐标。
MouseEvent.metaKey
只读-
如果鼠标事件触发时 meta 键处于按下状态,则返回
true
。 MouseEvent.movementX
只读-
鼠标指针相对于上次
mousemove
事件位置的 X 坐标。 MouseEvent.movementY
只读-
鼠标指针相对于上次
mousemove
事件位置的 Y 坐标。 MouseEvent.offsetX
只读-
鼠标指针相对于目标节点内边距边缘位置的 X 坐标。
MouseEvent.offsetY
只读-
鼠标指针相对于目标节点内边距边缘位置的 Y 坐标。
MouseEvent.pageX
只读-
鼠标指针相对于整个文档的 X 坐标。
MouseEvent.pageY
只读-
鼠标指针相对于整个文档的 Y 坐标。
-
事件的次要目标(如果存在)。
MouseEvent.screenX
只读-
鼠标指针在屏幕坐标中的 X 坐标。
MouseEvent.screenY
只读-
鼠标指针在屏幕坐标中的 Y 坐标。
MouseEvent.shiftKey
只读-
如果鼠标事件触发时 shift 键处于按下状态,则返回
true
。 MouseEvent.mozInputSource
非标准 只读-
生成事件的设备类型(
MOZ_SOURCE_*
常量之一)。这可以让你例如判断鼠标事件是由实际的鼠标还是由触摸事件生成的(这可能会影响你解释与事件关联的坐标的准确程度)。 MouseEvent.webkitForce
非标准 只读-
点击时施加的压力大小。
MouseEvent.x
只读-
MouseEvent.clientX
的别名。 MouseEvent.y
只读-
MouseEvent.clientY
的别名。
示例
此示例在双击卡片时切换卡片的大小。
JavaScript
const card = document.querySelector("aside");
card.addEventListener("dblclick", (e) => {
card.classList.toggle("large");
});
HTML
<aside>
<h3>My Card</h3>
<p>Double click to resize this object.</p>
</aside>
CSS
aside {
background: #ffee99;
border-radius: 1em;
display: inline-block;
padding: 1em;
transform: scale(0.9);
transform-origin: 0 0;
transition: transform 0.6s;
user-select: none;
}
.large {
transform: scale(1.3);
}
结果
规范
规范 |
---|
UI 事件 # event-type-dblclick |
HTML # handler-ondblclick |
浏览器兼容性
加载中…