Функция повторения ошибки jQuery при ошибке - PullRequest
1 голос
/ 22 сентября 2010

Обновленный вопрос:

Анимация JQuery повторяется снова и снова, если она обнаруживает ошибку.Возврат или возврат false не мешает анимации повторяться.Какова была бы лучшая практика, чтобы исправить эту ошибку?Спасибо.

<div id="label">
    FADE OUT
</div>

<script type="text/javascript">
     $(function() {

        $("#label")
            .animate(
                {opacity: 0}, 
                1000,
                function()
                {
                    throw new Error("Some error!");
                }
            );

     });
</script>

Оригинальный вопрос:

Не уверен, почему это так, но после некоторого использования jQuery (фактически до того, как он стал мейнстримом), я до сих пор не понимаю, почему некоторые функции будут повторятьсякогда он сталкивается с ошибкой.

Пример: - Сделать вызов ajax, и если обратный вызов обнаружит ошибку, вызов ajax продолжит вызывать обратный вызов.Это приводит к сотням ошибок в консоли firebug.

  • Даже если вы используете .trigger (событие), если у инициируемого вами события есть код, который встречает ошибку, jQuery продолжает вызывать событие снова и снова.

* Я попытался использовать try-catch и получить возврат или даже вернуть false ... но это все равно не мешает jQuery повторять событие снова и снова.

У меня вопрос 1.) Как это остановить?и 2.) Мне очень любопытно, почему это происходит, если кто-нибудь знает.

Спасибо!

1 Ответ

1 голос
/ 22 сентября 2010

Что вы имеете в виду, повторяя «снова и снова»? Если я сделаю обработчик так:

$('a').click( function() { throw 'oops'; } );

... ожидаете ли вы, что при первом щелчке вы получите ошибку, а затем после этого он перестанет вызывать обработчик ...?

...