当用户在字段中键入时,我正在使用 JQuery 来显示/隐藏 div。它在 IE8 及以下版本上运行但非常缓慢。我尝试了各种隐藏所有 div 然后只显示适当的组合,显示所有 div 并只隐藏适当的组合等。我假设问题与我返回近 30,000 行数据的事实有关(编辑:我应该有说4000行数据30000行html)。但是因为它在 Chrome、Firefox、Opera 等中运行得非常顺利,我想也许,也许我可以做一些事情来提高 IE 的速度。我知道,例如,我必须改变用户修剪的方式,并且有几种使用方法:not。所以也许我还能做些什么?我保留了注释代码,以便您可以看到我尝试过的其他选项,但可能没有得到正确的组合。
function updateRecords(e){
//references are all uppercase
var searchVal = $.trim($("#searchReference").val().toUpperCase());
var refCount = $('[id^="'+searchVal+'"]').attr('count');
if ((e.keyCode == 8) || (searchVal == '')){//this checks for backspace
$('.refRows').css({"display":"block"});
}
if (searchVal != '')
{
//$('.refRows').hide();
//$('.refRows').css("display","none");
$(".refRows").not('[id^="'+searchVal+'"]').css({"display":"none"});
//$(".refRows:not(" + searchVal + ")").css({"display":"none"});
//$('.refRows[id^="'+searchVal+'"]').css("display","inline-block");
}
}