#javascript #html
#javascript #HTML
Вопрос:
Как мне прослушать весь пользовательский ввод на странице с помощью javascript? По крайней мере, весь ввод с клавиатуры и мыши. Есть ли для этого событие? Несколько событий?
Комментарии:
1. Посмотрите здесь .
2. Что вы можете сделать, так это написать функцию и привязать ее к элементам для нужных вам событий.
Ответ №1:
const inputs = document.querySelectorAll('input')
inputs.forEach(el => {
el.addEventListener('input', function (ev) {
const { target } = ev
const { type, checked, value } = target
if(type === 'text') {
console.log(type, value)
}
if(['checkbox', 'radio'].includes(type)) {
console.log(type, checked, value)
}
})
})
<input type="text" value="">
<label>
<input type="checkbox" checked value="checkbox"> Checkbox
</label>
<label>
<input type="radio" name="radio" value="1"> Radio1
</label>
<label>
<input type="radio" name="radio" value="2"> Radio2
</label>
Ответ №2:
Как указано, вы можете найти список событий в документации
если вы хотите перехватывать каждое нажатие клавиши на своей веб-странице и получать код ключа, вы можете добавить это событие, например :
window.addEventListener("keydown", (event) => {
console.log(event.keyCode)
});
или, если вы хотите уловить положение мыши :
onmousemove = event => {
console.log("mouse location:", event.clientX, event.clientY);
}
window.addEventListener("mousemove", onmousemove);