--- title: click slug: Web/API/Element/click_event translation_of: Web/API/Element/click_event ---
当定点设备的按钮(通常是鼠标左键)在一个元素上被按下和放开时,click
事件就会被触发。
属性 | 类型 | 描述 |
---|---|---|
target {{readonlyInline}} |
EventTarget |
事件对象 (位于DOM树最上面的元素). |
type {{readonlyInline}} |
DOMString |
事件类型. |
bubbles {{readonlyInline}} |
Boolean |
是否冒泡 |
cancelable {{readonlyInline}} |
Boolean |
是否可被取消 |
view {{readonlyInline}} |
WindowProxy |
document.defaultView (该文档的window 对象) |
detail {{readonlyInline}} |
long (float ) |
在短时间内发生的连续点击次数的计数。 |
currentTarget {{readonlyInline}} |
EventTarget | 被事件监听触发的节点. |
relatedTarget {{readonlyInline}} |
EventTarget | 对于 mouseover , mouseout , mouseenter 和mouseleave 事件: 值为与其互补的事件(比如mouseenter 就为mouseleave ). 否则为null . |
screenX {{readonlyInline}} |
long | 点击事件发生时鼠标对应的屏幕x轴坐标. |
screenY {{readonlyInline}} |
long | 点击事件发生时鼠标对应的屏幕y轴坐标. |
clientX {{readonlyInline}} |
long | 点击事件发生时鼠标对应的浏览器窗口的x轴坐标. |
clientY {{readonlyInline}} |
long | 点击事件发生时鼠标对应的浏览器窗口的y轴坐标. |
button {{readonlyInline}} |
unsigned short | 点击时按下的鼠标按钮: 左键=0, 中间按钮=1 (如果实现的话), 右键=2. 对于配置为左手使用按钮的操作被反转的鼠标,这些值从右向左读取。 |
buttons {{readonlyInline}} |
unsigned short | 当鼠标事件被触发时按钮的buttons: 左键=1, 右键=2, 中间按钮=4, 第四个按钮(通常是"返回")=8,第五个按钮(通常是"前进")=16.若有两个或以上的按钮按下,返回以逻辑或运算形成的合并值.例如左键右键同时按下就返回 3 (=1 | 2). 更多信息. |
mozPressure {{readonlyInline}} |
float | 压力应用于接触或tabdevice时生成的事件的数量;该值介于0(最小压力)和1(最大压力)。 |
ctrlKey {{readonlyInline}} |
boolean | 当事件被触发时ctrl按键被按下时为true,否则为false。 |
shiftKey {{readonlyInline}} |
boolean | 当事件被触发时shift按键被按下时为true,否则为false。 |
altKey {{readonlyInline}} |
boolean | 当事件被触发时alt按键被按下时为true,否则为false。 |
metaKey {{readonlyInline}} |
boolean | 当事件被触发时meta按键被按下时为true,否则为false。 |
<div id="test"></div> <script> document.getElementById("test").addEventListener("click", function( event ) { // 在被点击的div内显示当前被点击次数 event.target.textContent = "click count: " + event.detail; }, false); </script>
Internet Explorer 8 & 9存在一个漏洞,具有经{{cssxref("background-color")}}样式计算为transparent
的元素覆盖在其它元素顶端时,不会收到click
事件。取而代之,所有click
事件将被触发于其底下的元素。参见this live example样例。
已知会触发此漏洞的情景:
{{cssxref("background-color")}}: rgba(0,0,0,0)
{{cssxref("opacity")}}: 0
并且明确指定{{cssxref("background-color")}}而不是transparent
filter: alpha(opacity=0);
并且明确指定{{cssxref("background-color")}}而不是transparent
safari手机版会有一个bug,当点击事件不是绑定在交互式的元素上(比如说HTML的div),并且也没有直接的事件监听器绑定在他们自身。可以戳 链接 查看演示。也可以看 Safari 的可点击元素 和 点击元素的定义.
解决方法如下:
onclick="void(0)"的属性,但并不包括body元素
使用可点击元素如<a>,代替不可交互式元素如div
Safari 手机版里,以下元素不会受到上述bug的影响: