Click events occur when a user clicks an element using a pointing device (e.g., mouse or touch).
click: Single click event.dblclick: Double click event.
element.addEventListener('click', (event) => {
// Handle click event
});
element.addEventListener('dblclick', (event) => {
// Handle double click event
});
const button = document.querySelector('button');
button.addEventListener('click', (e) => {
console.log('Button clicked!');
console.log('Target:', e.target);
});
button.addEventListener('dblclick', (e) => {
console.log('Button double-clicked!');
});
Input events are triggered when the value of an input, select, or textarea element changes.
event.target.value.input: Fires on any value change.change: Fires when value is committed (e.g., on blur).
element.addEventListener('input', (event) => {
// Handle input change
});
element.addEventListener('change', (event) => {
// Handle value commitment
});
const input = document.querySelector('#username');
const output = document.querySelector('p');
input.addEventListener('input', (e) => {
output.textContent = e.target.value;
});
input.addEventListener('change', (e) => {
console.log('Value committed:', e.target.value);
});
input: Fires immediately on every change (e.g., each keystroke).change: Fires only when the input is committed, typically on blur or Enter key.Focus events occur when an element gains or loses focus.
focus: When an element gains focus.blur: When an element loses focus.
element.addEventListener('focus', (event) => {
// Handle focus
});
element.addEventListener('blur', (event) => {
// Handle blur
});
const input = document.querySelector('#username');
input.addEventListener('focus', (e) => {
console.log('Input focused');
e.target.style.backgroundColor = 'lightyellow';
});
input.addEventListener('blur', (e) => {
console.log('Input blurred');
e.target.style.backgroundColor = '';
});
focus: Triggered when an element becomes active (e.g., clicked or tabbed into).blur: Triggered when an element loses focus (e.g., clicking elsewhere).Form events are triggered by actions within a form, such as submission.
FormData to easily access form data.event.preventDefault().submit: Fires when a form is submitted.
form.addEventListener('submit', (event) => {
event.preventDefault();
// Handle form submission
});
const form = document.querySelector('form');
form.addEventListener('submit', (e) => {
e.preventDefault();
const formData = new FormData(form);
for (const [key, value] of formData.entries()) {
console.log(`${key}: ${value}`);
}
});
Keyboard events occur when a user interacts with the keyboard.
event.key (key value) and event.code (physical key).keydown: When a key is pressed.keyup: When a key is released.keypress: When a key produces a character (deprecated).
window.addEventListener('keydown', (event) => {
// Handle key press
});
window.addEventListener('keyup', (event) => {
// Handle key release
});
window.addEventListener('keydown', (e) => {
console.log('Key:', e.key, 'Code:', e.code);
if (e.key === 'Enter') {
console.log('Enter key pressed!');
}
});
window.addEventListener('keyup', (e) => {
console.log('Key released:', e.key);
});
keydown: Fires when a key is pressed, including non-character keys.keyup: Fires when a key is released, useful for detecting key release.keypress: Fires only for character keys, but is deprecated.