我使用以下查询按内容选择 2 个元素:
$('.a .b:contains("Padding Before"), .a .b:contains("Padding After")');
这个查询非常慢,在我的电脑上执行需要 2 秒。没有:contains
它将返回一个只有 11 个元素的数据集。
然后我尝试优化它:
$('.a .b:contains("Padding")'); // or similiar query, but the result set is the same - 2 elements
我使用 internet explorer 10 进行测试,我预计修改后它的执行速度会快 2 倍。
取而代之的是,现在它的执行速度快了几十倍或几百倍。
那么,查询连接怎么可能对查询性能产生如此极端的影响呢?
如果我做同样的事情但有 2 个查询,我可以让相同的查询快 50-100 倍:
var n = $('.a .b:contains("Padding After")')
var m = $('.a .b:contains("Padding Before")');
这是 JQuery 1.8.23 / IE 中的错误还是导致性能下降的原因是什么?在 Chrome 上没有这样的问题。