Программный доступ к сведениям об ошибках веб-страницы в браузерах - PullRequest
4 голосов
/ 19 января 2010

Есть ли какой-нибудь способ получить доступ к информации о предупреждении / ошибке веб-страницы с помощью JavaScript?

Например, ошибки в IE отображаются в нижнем левом углу следующим образом: alt text

Я хотел бы получить доступ к деталям этой ошибки (в IE, а также в других браузерах, если это возможно), используя JavaScript.

Есть предложения?

РЕДАКТИРОВАТЬ: я не ищу отладчиков. Я хочу получить доступ к содержанию сведений об ошибке / консоли ошибок. С другой стороны, выяснить, как создать глобальный эквивалент обработчика исключений для JavaScript, тоже поможет

1 Ответ

4 голосов
/ 19 января 2010

Вы можете использовать событие window.onerror.Вы можете рассматривать это событие как своего рода глобальный обработчик исключений.Значение, возвращаемое onerror, определяет, отображает ли браузер стандартное сообщение об ошибке.Если вы вернете false, браузер отобразит стандартное сообщение об ошибке в консоли JavaScript.Если вы вернете true, браузер не отобразит стандартное сообщение об ошибке.( Источник )

<script type="text/javascript">
    window.onerror=function(msg, url, line){
        alert('An error has occurred' + msg);
        return true;
    }
</script>

<script type="text/javascript">
    // Syntax error
    document.write('hi there'
</script>

Вы также можете использовать традиционную обработку исключений в JavaScript для отлова ошибок во время выполнения.

try
{
    document.write(junkVariable)
}
catch (exception)
{
    document.write(exception)
}

Вывод вышеупомянутого будет:

‘junkVariable’ is undefined

РЕДАКТИРОВАТЬ: Как отмечается в комментарии psychotik , событие window.onerror не работает в Google Chrome.( Источник )

...