栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

CSS选择器和jQuery过滤器之间的区别?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CSS选择器和jQuery过滤器之间的区别?

我一直在寻找某种语法规则来区分两者,并且我想也许jQuery过滤器总是使用

:

但是,某些CSS选择器也使用

:

有没有人知道您使用的是CSS选择器还是jQuery过滤器的任何智能提示?

这是关于选择器库在其自身的扩展中采用CSS语法的最烦人的事情之一:因为基于匹配的过滤器和真正的伪类都在称为“伪选择器”的总称中合并在一起(基本上意味着“选择器以

:
“)开头的,判断“伪选择器”是过滤器
还是
真正的简单选择器的唯一方法是知道它的作用,如果您不熟悉选择器,这通常意味着参考jQuery文档。正如其他人在这里提到的。您会注意到,大多数这些基于匹配的过滤器的描述中都会有“
match”一词。这是“伪选择器”充当基于匹配项的过滤器的合理指示。


jQuery中有一个选择器子类别,称为“基本过滤器”,但是名称完全令人误解,选择器本身分类不佳。并非所有过滤器都是实际的过滤器,但其中一些过滤器的功能类似于标准伪类!至少jQuery扩展类别具有适当的名称-因为这些选择器是非标准的。

我所说的“基于匹配的过滤器”基本上是一个选择器,它根据 导致该选择器的整个复杂选择 器来匹配元素。听起来令人困惑?那是因为。

实际上,为了便于参考,以下是用作基于匹配的过滤器的jQuery选择器的列表:

  • :eq()
  • :gt()
  • :lt()
  • :even
  • :odd
  • :first
  • :last

这些选择器返回一组匹配项中的第n个元素,这与其他标准选择器不同,其他标准选择器采用每个元素并仅基于由DOM或其​​他方式提供的有关元素的信息来推断元素的含义,以及不基于选择器字符串的其余部分。虽然它们经常比较

:first-child
:last-child
:nth-child()
:nth-last-child()
,他们是在功能方面完全不同。在选择使用哪个选择器时要非常小心。

例如,下面的选择器,使用jQuery的

:first

$('ul > li:first')

仅匹配 一个 元素:第一个元素匹配选择

ul > li
的无论多少,
ul
li
元件有在DOM。可以将这种选择器符号编写为方法调用,如下所示:

$('ul > li').first()

这使实际操作更加清晰。它不同于

:first-child

$('ul > li:first-child')

这样,

:first-child
将选择每个元素作为
li
其父元素的第一个孩子
ul
,并因此有可能返回一个 或多个
li
元素,与之恰好相反
:first

还值得一提的是

:not()
选择器。尽管我不认为它是与上述选择器同类型的过滤器,但重要的是要记住,jQuery是从CSS实际提供的功能中扩展出来的。这个问题将详细说明差异。我想它仍然归因于“基本过滤器”
.not()
,这是因为,它绝对是所有过滤器方法的目的和目的,与的对立面
.filter()



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/575647.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号