【发布时间】:2010-01-14 14:12:39
【问题描述】:
我经常想知道 jQuery 中选择器与等效函数的使用。我的意思是包含返回相同结果集但构造不同的相同组件的语句。
举个例子:
alert($("#FundManager1>option").length);
alert($("#FundManager1").find("option").length);
(注意:目的是针对两个等效查询 - 如果它们并不总是相同,请指出这一点,我将不胜感激)
那么,鉴于上面的例子,速度/性能有什么真正的区别吗?显然,前者更短,因此会导致上传/下载的字节数更少,但我目前对此并不感兴趣。
【问题讨论】:
-
在 CSS 中,
>是一个(直接)子选择器。因此,不能保证您上面的代码产生相同的结果集。 -
你是对的,但假设
#FundManager1是<select>元素,结果将是相同的。 -
@DouweM 前提是您没有使用
optgroups(并且将来不会使用它们),是的:) -
你应该比较
.children('options')而不是.find('options')
标签: jquery performance selector