我正在使用一个Web应用程序,其中我必须显示一个约有400行9列的html表。
应用程序中发生了很多事情……(大量事件,不同的视图)
它具有约1700行的Jquery代码。尽管我已经优化了Jquery代码,达到了我在使用-选择器缓存,使用适当的选择器,使用适当的事件委托,链接,引用jsperf来测试几乎所有方法,使用的选择器等方面阅读过的各种文章的程度。该页面已在一定程度上增加了,但仍远远超出了要求。 (严格的性能要求)
问题:对于每个表单元格(td),都有一个click事件,它将打开引导程序模式。如果没有。表中的行数为50。模式打开时间为50.32ms,如果表行大约为400,则模式打开时间为700ms(使用console.time测量时间)。我表中的行数(html代码)如何影响模式打开时间。我怎样才能解决这个问题??
->这是我用来打开模式的代码
$('#mainTable).on('click','.cell',function(){
cellzoom(this);
});
function cellzoom(obj,e,date) {
console.time('cellzoom:')
cellModal();
console.timeEnd('cellzoom:')
}
function cellModal(){
// $(mainloader).show();
console.time('cellModal:')
$(cellview).modal('show');
console.timeEnd('cellModal:')
}
附言:我无法使用分页
任何处理过大数据集和大量jquery代码以及他们为优化代码所做的事情(工具)的人……任何帮助将不胜感激!
最佳答案
可能取决于您的CSS模态。如果它有很多阴影,渐变等,则浏览器可能会受大型HTML结构的影响,并且会缓慢呈现CSS。但是,如果我是您,我还将查看显示模态的方法,就像@Kirk写道