JavaScript Events

HTML events are "things" that happen to HTML elements.

When JavaScript is used in HTML pages, JavaScript can "react" on these events.

HTML Events


An HTML event can be something the browser does, or something a user does.

Here are some examples of HTML events:

Often, when events happen, you may want to do something.

JavaScript lets you execute code when events are detected.

HTML allows event handler attributes, with JavaScript code, to be added to HTML elements.

With single quotes:

<some-HTML-element some-event='some JavaScript'>

With double quotes:

<some-HTML-element some-event="some JavaScript">

In the following example, an onclick attribute (with code), is added to a button element:


<button onclick='document.getElementById("demo").innerHTML=Date()'>The time is?</button>
Try it Yourself

In the example above, the JavaScript code changes the content of the element with id="demo".

In the next example, the code changes the content of its own element (using this.innerHTML):


<button onclick="this.innerHTML=Date()">The time is?</button>
Try it Yourself

JavaScript code is often several lines long. It is more common to see event attributes calling functions:


<button onclick="displayDate()">The time is?</button>
Try it Yourself

Common HTML Events


Here is a list of some common HTML events:

Event Description
onchange An HTML element has been changed
onclick The user clicks an HTML element
onmouseover The user moves the mouse over an HTML element
onmouseout The user moves the mouse away from an HTML element
onkeydown The user pushes a keyboard key
onload The browser has finished loading the page

The list is much longer: NGO JavaScript Reference HTML DOM Events.

What can JavaScript Do?


Event handlers can be used to handle, and verify, user input, user actions, and browser actions:

Many different methods can be used to let JavaScript work with events:

You will learn a lot more about events and event handlers in the HTML DOM chapters.

Test Yourself with Exercises