jQuery .each导致浏览器挂起

时间:2013-11-20 10:00:33

标签: javascript jquery

我想循环所有表行并进行一些验证,下面是我的代码。

$("#table > tr").each( function( idx, el ) {

// my calculations goes here, it will take 500 ms for each record        

});

当我循环播放20-30行时,如果我循环播放100多条记录,然后浏览器挂起,这样就可以了。

我在这个逻辑中无法使用setTimeout,有人可以帮我解决这个问题。在此先感谢!!

1 个答案:

答案 0 :(得分:0)

当然,您可以添加setTimeout

$("#table > tr").each( function( idx, el ) {

    setTimeout( function() { validation(idx,el) }, 0 );

});

但我很确定你在验证功能中以错误的方式做某事。 500毫秒的同步代码在Web开发中太多了,特别是对于30秒的任务!我确信你可以异步或更优化。