2013-09-29 4 views
3

Когда у меня есть фатальная ошибка в JavaScript делает приложение не может использоваться, как этот:Alert Javascript Ошибки при сбое javascript?

SyntaxError: Unexpected token '}' 

Можно ли поймать его и отобразить его как-то? например замена корпуса или предупреждение?

Итак, другими словами, способ запуска кода JavaScript Если есть Java-код ошибки ...

Я не могу открыть веб-инспектор по времени выполнения, когда я внутри разбитого страницы, это потому что я использую webkit за пределами браузера, который, как правило, сможет открыть и отобразить webinspector на разбитой странице.

ответ

5

Определение window.onerror обратного вызова в первом <script> нагруженного на странице, как это:

<script> 
window.onerror = function(msg, url, line) { 
    alert(msg + ' appeared on the line #' + line); 
} 
</script> 
+0

Мне это нравится, когда есть такие простые в использовании решения, что экономит часы. Большое спасибо, теперь я могу перенаправить ошибки на собственный обработчик ошибок. Не понимаю, почему документ способен выполнить обратный вызов на разбитых страницах, в то время как другой действительный объект не может работать ... но по крайней мере он работает ... –

0

Вы можете использовать

try{ 
    adddlert("Welcome guest!"); 
}catch(err){ 
    alert(err.message); 
} 
+0

Постараюсь все веб-приложение (2k линии), внутри попытки обработчик .. не уверен, что ошибки времени выполнения будут пойманы таким образом ... –

+0

, поскольку я знаю, что он должен поймать ошибки времени выполнения :) –

+0

Пример OP - это синтаксическая ошибка, хотя и не ошибка времени выполнения. –