The onclick property returns the click
event handler code on the current element.
click
event to trigger an action, also consider adding this same action to the keydown
event, to allow the use of that same action by people who don't use a mouse or a touch screen.Syntax
element.onclick = functionRef;
where functionRef is a function - often a name of a function declared elsewhere or a function expression. See "JavaScript Guide:Functions" for details.
The single argument passed to the specified event handler function is a MouseEvent
object. Within the handler, this
will be the element upon which the event was triggered.
Example
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>onclick event example</title> <script> function initElement() { var p = document.getElementById("foo"); // NOTE: showAlert(); or showAlert(param); will NOT work here. // Must be a reference to a function name, not a function call. p.onclick = showAlert; }; function showAlert(event) { alert("onclick Event detected!"); } </script> <style> #foo { border: solid blue 2px; } </style> </head> <body onload="initElement();"> <span id="foo">My Event Element</span> <p>click on the above element.</p> </body> </html>
Or you can use an anonymous function, like this:
p.onclick = function(event) { alert("moot!"); };
Notes
The click
event is raised when the user clicks on an element. The click event will occur after the mousedown
and mouseup
events.
Only one click
handler can be assigned to an object at a time with this property. You may be inclined to use the EventTarget.addEventListener()
method instead, since it is more flexible and part of the DOM Events specification.
Specification
Specification | Status | Comment |
---|---|---|
WHATWG HTML Living Standard The definition of 'onclick' in that specification. |
Living Standard |