Лучший метод, который я нашел в ходе исследований, - это создать прослушиватель событий для каждого события в одном и том же элементе следующим образом:
window.onload = addListeners;
function addListeners(){
if(window.addEventListener){
document.getElementById('message').addEventListener('keydown',textarea_resize,false);
document.getElementById('message').addEventListener('keyup',textarea_resize,false);
document.getElementById('message').addEventListener('keypress',textarea_resize,false);
}
Чтобы объяснить немного дальше:
addEventListener('event to listen to', function_to_be_called, useCapture-value)
Первый параметр - это событие, которое вы хотите прослушать (т. Е. 'click'
или 'keydown'
).
Вторая - это функция, которую вы хотите вызвать: (т.е. validate_form
).
- вы также можете отправить параметры в функцию: validate_form(e, i)
.
Последнее значение для захвата использования обычно устанавливается на false
для большинства применений, а false
- это автоматическое значение, если вы не указали никакого значения. Дальнейшее объяснение можно получить здесь !
Таким образом, полный пример может быть: document.getElementById('message').addEventListener('keydown',textarea_resize,false);
, как я показал выше.