【发布时间】:2018-09-09 21:07:02
【问题描述】:
给定一个像 $(selector,containerElement) 这样的 jQuery 集合,是否可以在不构建集合的情况下测试给定元素是否会成为该集合的一部分。
也就是说,不这样做:$(selector,containerElement).is(someElement),它将构造一个包含所有匹配元素的 jQuery 对象,然后检查其中一个元素是否为 someElement。
有没有更有效的方法?
PS:请注意,jQuery 支持额外的选择器语法,如 :has()、:lt()、:first 和相对选择器,如 > tagName、+ tagName。
【问题讨论】:
-
jQuery 本身就非常高效。为什么需要这样做?
-
@gforce301,当您需要频繁执行此操作时,例如在
setInterval回调或响应移动事件时,穷举方法不够快。 -
现在有 3-4 名用户将时间花在了可以避免的事情上,如果您考虑到所有奇怪的情况,制作一个简单的样本。
-
@LGSon 我认为 jQuery 支持比原生 API 更多的选择器是常识。我编辑了这个问题以明确这一点。
-
@GetFree 这是常识,但这些选择器在您的情况下可能有用,也可能没用。现在我们知道了。
标签: javascript jquery dom jquery-selectors