Follow the solution with comments.
Add the code at the end of your HTML page. It’s good practice to add the code or link to the .js
at the bottom of the page when this does not need to be executed before the content is rendered.
Read on here, will help you understand what I wrote above.
//É importante que o seu código seja executada somente após a renderização de todos os inputs.
//Caso contrário, o script irá fazer referência a um elemento que
//não foi renderizado, por tanto não existe no momento.
//A técnica abaixo chama-se "self executing", ou seja
//automaticamente será executado o código.
(function() {
//Array com todos os elementos input.
//Cada indice do array "inputs" representa contém um objecto input
inputs = document.getElementsByTagName('input');
//É atribuído o evento "keypress" a cada objecto input
//Definimos também qual função será executa, no exemplo dei o nome de "minhaFuncao"
for (index = 0; index < inputs.length; ++index)
inputs[index].addEventListener("keypress", minhaFuncao);
})();
function minhaFuncao(event) {
console.log(event.target.id);
}
Would Jquery be an "impure" Javascript? srsrs
– Daniel Omine
@Danielomine rsrs! Using pure javascript is faster than using frameworks, but it’s in my opinion risky due to cross browser.
– Filipe Moraes
Exactly. It is that in the end you will end up arriving in the same as in Jquery. You can go straight into Jquery code and extract only the parts that matter. rsr.
– Daniel Omine
@Danielomine, kkkkkk... Heresy use jQuery, is that I am studying javascript and the focus here is performance, but really would have to have additional treatments to not have crossbrowser problems...
– João Paulo