2010-10-19 56 views
2

我使用dynaTrace AJAX版分析JavaScript。如何优化jquery中的CLASS函数

根据该工具的“热点”,下面的jQuery的方法是使用多数的执行时间:

CLASS(*, *, undefined, *, undefined, false): false 

...有我的网页上超过700个调用。

什么是这个调用,我该如何优化它?

我正在使用jQuery版本1.4.2。性能问题主要在IE6和IE7中。

回答

0

最有可能的是,你应该优化选择器你传递给jQuery,而不是jQuery的选择器引擎本身。也许你可以识别你使用的最常用的选择器,或者找到一种方法来识别最慢的。如果您提供这些服务,我们可能会帮助优化这些服务。

+0

当我使用“.classname”选择器时,是否调用CLASS()方法? – frankadelic 2010-10-20 16:41:26

+0

jQuery中没有名为'CLASS'的方法,但我dynaTrace意味着基于你所描述的选择器引擎。不知道它从哪里得到'CLASS'。 – bcherry 2010-10-21 00:42:03

1

如果可能,请升级到jQuery 1.4.3,这对新版浏览器在这方面有重大改进......通过优化,我的意思是说这大部分时间都不会被调用。相反,它是using the querySelectorAll() if it exists,使整个选择器进程便宜。

+1

我的性能问题在IE6和IE7中(更新后的问题反映了这一点)。这些浏览器不支持querySelectorAll()。 (还是)感谢你的建议。 – frankadelic 2010-10-20 03:04:40