window.onerror не работает - PullRequest
       11

window.onerror не работает

5 голосов
/ 16 декабря 2009

У меня есть какой-то хитрый AJAX-код в форме, и иногда он не работает (не спрашивайте почему, я не могу обойти это). Когда это происходит, мне нужно перехватить ошибку, сбросить индикатор скрытого поля и естественным образом отправить форму, чтобы пользователь не испытывал неприятных ощущений. Я планировал использовать window.onerror для этого, но он никогда не стреляет! Я использую IE8, и все, о чем я должен беспокоиться, это браузер IE. Есть ли что-то, чтобы заставить это событие работать? Вот мой код ...

window.onerror = function() {
  alert("Error!");
  document.getElementById("hidAjax").value = "0";
  document.forms[0].submit();
}

Ответы [ 3 ]

12 голосов
/ 16 декабря 2009

"Распространенная проблема, которая кусает многих разработчиков, возникает, когда их обработчик onerror не вызывается, потому что у них включена отладка сценариев для Internet Explorer. Это будет иметь место по умолчанию, если вы установили Microsoft Script Debugger или Microsoft Visual Studio 6.0® (в частности, Visual InterDev 6.0 ™) - обработка ошибок - это то, как эти продукты запускают свой отладчик. Вы можете отключить отладку сценариев для данного экземпляра Internet Explorer на вкладке «Дополнительно» диалогового окна «Свойства обозревателя» (обратите внимание, что проверка параметра Отключить отладку сценария применяется только к этому экземпляру Internet Explorer): "

http://msdn.microsoft.com/en-us/library/ms976144.aspx

2 голосов
/ 04 декабря 2011

try / catch также вводит дополнительный объект ошибки, который имеет только область действия catch. В приложениях, где важна производительность, это не очень хорошая идея.

0 голосов
/ 16 декабря 2009

Есть какая-то причина, чтобы не просто попытаться разобраться с хитрым кодом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...