如果遇到错误,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控制台出现数百个错误。
*我尝试过使用try-catch并返回,甚至返回false ...但它仍然不会阻止jQuery反复重复该事件。
我的问题是1.)如何阻止它? 2.)如果有人知道的话,我很好奇为什么会发生这种情况。
谢谢!
答案 0 :(得分:1)
你是什么意思重复'一遍又一遍'?如果我像这样制作一个处理程序:
$('a').click( function() { throw 'oops'; } );
...你是否期望在第一次点击时出现错误,然后停止调用处理程序......?