Jquery查找方法与传统选择器

时间:2014-02-11 18:37:25

标签: jquery

我有一个带有id的div - #calculator1

我想定位该div中的类 - 例如一个名为key的类。 我正在使用一种名为“setToBlank()”的虚构方法

以下方法 - 这被认为是最佳做法?

1:$("#calculator1 key).setToBlank()

或将id存储在缓存变量中 -

_calculator = $("#calculator1");
_calculator.find("key").setToBlank();

我反复使用它,因此将其保存在缓存变量中是合乎逻辑的。 我不确定.find是否效率更低,因为我会反复调用它。

3 个答案:

答案 0 :(得分:2)

Learn jQuery中所述,.find()的版本更快:

  

.find()方法更快,因为处理了第一个选择   无需通过Sizzle选择器引擎 - 仅限ID选择   使用document.getElementById()处理,这非常快   因为它是浏览器的原生。

旁注。 find("key")搜索key代码。课堂使用find(".key")

答案 1 :(得分:0)

我不确定.find()与jQuery选择器的效率,但是您发布的代码中存在错误。

$("#calculator1 key).setToBlank(); 

这将查找#calculator1中的所有关键标签,你需要像这样:

$("#calculator1 .key").setToBlank();

这将选择#calculator1

内所有类密钥的项目

答案 2 :(得分:0)

我认为最具表现力的是:<​​/ p>

var field =$(document.getElementById("calculator1"));
field.find("key").setToBlank();

如果您希望工具测试效果:http://jsperf.com/