O objeto window
possui um evento chamado onerror que é
muito útil para descobrir se houve erros na execução
de um código JavaScript. Veja um exemplo de como podemos
usá-lo: <html>
<head>
<title>Tratamento de erros</title>
</head>
<body>
<script language="javascript">
<!--
window.onerror = avisar;
// esta linha provocará um erro
window.alert(carregar()); // função
carregar() não existe
function avisar(){
window.alert("Houve um erro de
execução.");
}
//-->
</script>
</body>
</html>
Execute está página e verá uma caixa de
mensagem com o texto:
Houve
um erro de execução.
Mas ver como isso aconteceu. Comecemos com a primeira linha
de código: window.onerror
= avisar; É importante que esta linha
de código seja inserida o mais cedo possível na
página. Ela deverá ser executada antes de qualquer
código que possa provocar erros. Veja que definimos uma
função chamada avisar como gerenciador
de eventos para o evento onerror. Assim, sempre
que um erro ocorrer na página, esta função
será chamada. Veja agora o código para esta função:
function avisar(){
window.alert("Houve um erro de execução.");
}
Aqui exibimos apenas uma mensagem, mas, você poderia usar
esta função para direcionar o usuário para
uma outra página contendo informações e
até mesmo executar um procedimento que envie um e-mail
a você avisando-o sobre o erro.
Veja agora o trecho de código que causa o erro na página:
// esta linha provocará
um erro
window.alert(carregar()); // função carregar()
não existe
Aqui o erro é fácil de detectar. Estamos efetuando
uma chamada à uma função que não
existe na página. Embora este exemplo apresente este
erro de propósito, saiba que vários erros de JavaScript
são causados durante chamadas à funções
que não existem ou que não foram carregadas ainda. |