什么会导致Chrome和Firefox之间的过滤器加载速度有所不同?

zga*_*ll1 7 firefox google-chrome load-time

我有一个有多个过滤器的新闻聚合器页面.公司过滤器有很多公司.在Chrome中单击+按钮以展开列表并查看公司列表时,整个列表需要6-8秒才能显示.在Firefox中,列表几乎可以立即显示.有人可以帮我调查可能导致浏览器加载时间差异的原因吗?

Ale*_*das 1

您需要提高 DOM 节点查找性能:

$newsFilterRow.on('click', '.js-filter-more', function(event) {
    var $this = $(this)
    var $items = $this.closest($newsFilterRow).find($newsFilterItem).filter(':hidden');
    var tmp = $items.splice(0, 56);
    $(tmp).addClass(newsFilterItemVisibleClass).css('display', 'inline-block');
    if ($items.length === 0) {
        $this.remove();
    }
});
Run Code Online (Sandbox Code Playgroud)

您正在使用 .find() 和 .filter()

我建议更改这些过滤器以提高Chrome 的性能。

http://www.steveworkman.com/html5-2/javascript/2011/improving-javascript-xml-node-finding-performance-by-2000/