Javascript 显示IE中循环长时间运行的进度条
我有一个JSON数组,大约有2000条记录,我需要构建一个表来显示这些记录中的数据。由于它有大量数据,处理过程可能会导致浏览器冻结。因此,我被要求显示一个进度条,指示进度。Javascript是单线程的,我必须使用Setinterval来显示进度。但是在IE版本中进度显示不正确,这取决于数组中记录的数量。 请帮忙 变量g_arr=['A','B','C','D','E','F','g','H']; $btn.clickfunction{ var回路=1000; $tbl t车身总成拆卸; $divProgress.progressbar{ 数值:0 }; //window.setTimeoutfunction{ 对于变量i=0;iJavascript 显示IE中循环长时间运行的进度条,javascript,jquery,settimeout,jquery-ui-progressbar,Javascript,Jquery,Settimeout,Jquery Ui Progressbar,我有一个JSON数组,大约有2000条记录,我需要构建一个表来显示这些记录中的数据。由于它有大量数据,处理过程可能会导致浏览器冻结。因此,我被要求显示一个进度条,指示进度。Javascript是单线程的,我必须使用Setinterval来显示进度。但是在IE版本中进度显示不正确,这取决于数组中记录的数量。 请帮忙 变量g_arr=['A','B','C','D','E','F','g','H']; $btn.clickfunction{ var回路=1000; $tbl t车身总成拆卸; $d
我对大量数据也有同样的问题,对我来说最好的解决方法就是简单地显示加载。。。而不是一些动画加载器,因为它们被卡住了起初我想放置一个加载gif…但它也被卡住了无论如何汤姆你的建议很感激,那将是我最后的尝试你也可以通过增加百分比使它更动态:加载。。。10%,但这也会被卡住,所以你会看到从10跳到40等等,但这确实会让它变得更大dynamic@Noval请检查我的更新以支持IE9及以下版本。如果您关心兼容性,我不会使用requestAnimationFrame。所有其他观点都是正确的Hi Jose,无论如何,谢谢你指出错误,我会纠正的..但回到进度问题,我看到了requestAnimationFrame
只适用于IE 9+versions@Tom请检查我的更新。如果不支持requestAnimationFrame,则应使用优雅降级,然后按常规方式使用。感谢Jose u刚刚节省了时间。我将doRequestFrame函数中的requestAnimationFrame替换为window.setTimeoutdoRequestFrame,0。。。。现在它在所有版本的IE@Noval很好,但是如果浏览器支持requestAnimationFrame,就让它使用它,正如您在我的代码示例中看到的那样。