我无法在大型数据集上真正测试它,但如果它到达(像以某种方式分块数据集等),解决任何问题都不会太困难。
我怀疑这里是否存在真正的性能问题 - 如果您的浏览器能够显示它们,但这只是一个猜测。无论如何,您应该仔细考虑分页数据,如果数据量很大。或者,如果用户请求,则允许筛选以轮询服务器以获取更多信息。向用户显示大量文字很少是一个很好的可用性决定。
你将不得不在浏览器上测试,但我没有看到任何浏览器问题。这样说的话,我希望下面的例子能够为你服务(可以在这个JSFiddle上玩)。这不是非常有效,但应该给你一个想法。另外 - match一部分也许应该进行更好地避免误报等
1 |
2 4 |
3 |
4 5 |
5 |
3 |
4 |
5 1 |
1
2
3
4
5
Reset
var table = document.getElementById('table');
function show(className)
{
reset();
for(var i = 0, l = table.rows.length; i < l; i++)
{
var row = table.rows[i];
if(!row.className.match(className))
{
row.style.visibility = 'hidden';
}
}
}
function reset()
{
for(var i = 0, l = table.rows.length; i < l; i++)
{
var row = table.rows[i];
row.style.visibility = 'visible';
}
}