button button click
Web technology reference for developers
HTMLStructure of content on the web
CSSCode used to describe document style
JavaScriptGeneral-purpose scripting language
HTTPProtocol for transmitting web resources
Web APIsInterfaces for building web applications
Web ExtensionsDeveloping extensions for web browsers
Web TechnologyWeb technology reference for developers
Guides Guides Overview / MDN Learning AreaLearn web development
MDN Learning AreaLearn web development
HTMLLearn to structure web content with HTML
CSSLearn to style content using CSS
JavaScriptLearn to run scripts in the browser
AccessibilityLearn to make the web accessible to all
Plus Plus OverviewA customized MDN experience
AI HelpGet real-time assistance and support
UpdatesAll browser compatibility updates at a glance
DocumentationLearn how to use MDN Plus
FAQFrequently asked questions about MDN Plus
Curriculum Blog Tools PlaygroundWrite, test and share your code
HTTP ObservatoryScan a website for free
AI HelpGet real-time assistance and support
Theme Log in Sign up for free References Web APIs Element click Article Actions English (US) Español Français 日本語 한국어 Português (do Brasil) Русский 中文 (简体) Filter sidebar Clear filter inputThis feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015 .
Learn more See full compatibility Report feedbackAn element receives a click event when any of the following occurs:
A pointing-device button (such as a mouse's primary button) is both pressed and released while the pointer is located inside the element. A touch gesture is performed on the element. Any user interaction that is equivalent to a click occurs, such as pressing the Space key or Enter key while the element is focused.Note: In practice, browsers don't fire the click event for custom controls such as a div with tabindex="0" . To check the reason behind this behavior, see this Chromium issue .
If the button is pressed on one element and the pointer is moved outside the element before the button is released, the event is fired on the most specific ancestor element that contained both elements.
click fires after both the mousedown and mouseup events have fired, in that order.
The event is a device-independent event — meaning it can be activated by touch, keyboard, mouse, and any other mechanism provided by assistive technology.
Use the event name in methods like addEventListener() , or set an event handler property.
js addEventListener("click", (event) = {}); onclick = (event) = {};A PointerEvent . Inherits from MouseEvent .
Note: In earlier versions of the specification the event type for this event was a MouseEvent , and this is still the type passed in Firefox and Safari.
This interface inherits properties from MouseEvent and Event .
PointerEvent.altitudeAngle Read only ExperimentalRepresents the angle between a transducer (a pointer or stylus) axis and the X-Y plane of a device screen.
PointerEvent.azimuthAngle Read only ExperimentalRepresents the angle between the Y-Z plane and the plane containing both the transducer (a pointer or stylus) axis and the Y axis.
PointerEvent.pointerId Read onlyA unique identifier for the pointer causing the event.
PointerEvent.width Read onlyThe width (magnitude on the X axis), in CSS pixels, of the contact geometry of the pointer.
PointerEvent.height Read onlyThe height (magnitude on the Y axis), in CSS pixels, of the contact geometry of the pointer.
PointerEvent.pressure Read onlyThe normalized pressure of the pointer input in the range 0 to 1 , where 0 and 1 represent the minimum and maximum pressure the hardware is capable of detecting, respectively.
PointerEvent.tangentialPressure Read onlyThe normalized tangential pressure of the pointer input (also known as barrel pressure or cylinder stress ) in the range -1 to 1 , where 0 is the neutral position of the control.
PointerEvent.tiltX Read onlyThe plane angle (in degrees, in the range of -90 to 90 ) between the Y–Z plane and the plane containing both the pointer (e.g. pen stylus) axis and the Y axis.
PointerEvent.tiltY Read onlyThe plane angle (in degrees, in the range of -90 to 90 ) between the X–Z plane and the plane containing both the pointer (e.g. pen stylus) axis and the X axis.
PointerEvent.twist Read onlyThe clockwise rotation of the pointer (e.g. pen stylus) around its major axis in degrees, with a value in the range 0 to 359 .
PointerEvent.pointerType Read onlyIndicates the device type that caused the event (mouse, pen, touch, etc.).
PointerEvent.isPrimary Read onlyIndicates if the pointer represents the primary pointer of this pointer type.
The PointerEvent object passed into the event handler for click has its detail property set to the number of times the target was clicked. In other words, detail will be 2 for a double-click, 3 for triple-click, and so forth. This counter resets after a short interval without any clicks occurring; the specifics of how long that interval is may vary from browser to browser and across platforms. The interval is also likely to be affected by user preferences; for example, accessibility options may extend this interval to make it easier to perform multiple clicks with adaptive interfaces.
This example displays the number of consecutive clicks on a button .
Try making rapid, repeated clicks on the button to increase the click count. If you take a break between clicks, the count will reset.
BCD tables only load in the browser
This page was last modified on Aug 15, 2024 by MDN contributors .
View this page on GitHub • Report a problem with this contentYour blueprint for a better internet.
MDN on Mastodon MDN on X (formerly Twitter) MDN on GitHub MDN Blog RSS Feed Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation .
Portions of this content are ©1998– 2024 by individual mozilla.org contributors. Content available under a Creative Commons license .