`

jquery选择器匹配方式

 
阅读更多
          一直了解jQuery的优势之一是支持强大的选择器,只知道支持css1-3的几乎所有选择器。没有深入探究过具体选择器内部匹配是怎么实现的,查阅资料才了解这点,整理去下:
        1.3版使用了全新的选择符引擎Sizzle,库的性能也因此有了极大提升,支持了事件委托。

那么Sizzle是什么呢?
        我们知道一般选择器的匹配模式,都是一个顺序的思维方式,需要递进式匹配。
         Sizzle采取了相反Right To Left的实现方式。


比如页面现在有一个div嵌套一个span标签,$(‘div span’) 这样的匹配时:
1)一般选择器执行的操作都是先匹配页面中div然后再匹配它的节点下的span标签,之后返回结果。
2)Sizzle会先搜寻页面中所有的span标签,再其后的操作中才去判断它的父节点(包括父节点以上)是否为div,是则压入数组,否则pass,进入下一判断,最后返回该操作序列。
分享到:
评论

相关推荐

    jQuery选择器源码解读(六):Sizzle选择器匹配逻辑分析

    近期看了一些网上关于Sizzle的分析文章,就匹配次序往往就说使用了从右到左的逆向匹配法,...在此先申明一点,下面所说的关系选择器是指W3C中的Combinator选择器,因本人觉得用关系选择器这个名字要比其它更加贴近实际

    jQuery基本过滤选择器使用介绍

    简单过滤选择器是过滤选择器中使用最广泛的一种 jQuery选择器详解 根据所获取页面中元素的不同,可以将jQuery选择器分为:基本选择器、层次选择器、过滤选择器、表单选择器四大类。其中,在过滤选择器中有可以分为:...

    jquery CSS选择器笔记

    去年我学jQuery的时候,曾经做过一点选择器(selector)的笔记。 这几天拿出来看了一下,发现很多都忘记了。所以,我决定把它们贴在这里,方便以后查看。这对其他朋友应该也是有用的,毕竟选择器是制作网页效果的第...

    jQuery中:not选择器用法实例

    此选择器能够移除元素集合中与给定选择器匹配的元素。 语法结构: 代码如下:$(“:not(selector)”) 此选择器一般也要和其他选择器配合使用,比如类选择器和元素选择器等等。例如: 代码如下:$(“li:not(.second)”)....

    jQuery选择器中的特殊符号处理方法

    一般情况下,在jQuery选择器中,我们很少会用到诸如“.”、“#”、“(”、“[”等特殊字符,但是在实际应用中,偶尔也会遇到表达式中含有“#”和“.”等特殊字符,那么是如何处理这些个特殊字符的呢?下面小编给大家...

    jquery 属性选择器(匹配具有指定属性的元素)

    jQuery 选择器 在前面的章节中,我们展示了一些有关如何选取 HTML 元素的实例。 关键点是学习 jQuery 选择器是如何准确地选取您希望应用效果的元素。 jQuery 元素选择器和属性选择器允许您通过标签名、属性名或...

    jQuery中复合选择器简单用法示例

    多种匹配条件的选择器并不是匹配同时满足这几个选择器的匹配条件的元素,而是将每个选择器匹配的元素合并后一起返回。 复合选择器的使用方法如下: $(" selector1,selector2,selectorN"); selector1:为一个有效的...

    jQuery 选择器用法实例分析【prev + next】

    jQuery的prev + next选择器用于匹配紧接在prev元素后面的同辈next元素,将其封装为jQuery对象并返回。 注意: 选择器next的查找范围必须是与”prev元素”相邻的下一个元素,并且必须是”prev元素”的同辈元素。 语法...

    jQuery中:animated选择器用法实例

    此选择器匹配所有正在执行动画效果的元素。 可以使用animate()方法创建自定义动画。 语法结构: 代码如下:$(“:animated”) 此选择器一般也要和其他选择器配合使用,比如类选择器和元素选择器等等。例如: 代码如下:...

    jquery 选择器引擎sizzle浅析

    I’m sorry!我用jquery的大概有一年了,只知道$(selector),其内部选择器...首先会做如下的判断 代码如下: /** *关于 querySelectorAll函数 *返回当前文档中匹配一个特定选择器的所有的元素 *var nodelist = element.q

    JQuery选择器特辑 详细小结

    Jquery选择器分类:基本选择器,层次选择器,过滤选择器,表单选择器 一、基本选择器:jquery中最常用的选择器,也是最简单的选择器。通过元素id、class和标签名等来查找DOM元素。 表-基本选择器 选择器 描述 ...

    jquery基本选择器匹配多个元素的实现方法

    下面小编就为大家带来一篇jquery基本选择器匹配多个元素的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    jQuery选择器之基本选择器与层次选择器

    基本选择器是jQuery中最常用的选择器,也是最简单的选择器,它通过元素id、class和标签名等来查找DOM元素。在网页中,每个id名称只能使用一次,class允许重复使用。  选择器  描述 返回  示例 #id 根据给定...

    jQuery中:focus选择器用法实例

    本文实例讲述了jQuery中:focus选择器用法。分享给大家供大家参考。具体分析如下: 此选择器能够匹配当前获取焦点的元素。 语法结构: 代码如下:$(“:focus”) :focus选择器一般需要和其他选择器配合使用,例如和类...

    jquery层级选择器的实现(匹配后代元素div)

    下面小编就为大家带来一篇jquery层级选择器的实现(匹配后代元素div)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    JQuery选择器

    JQuery选择器 几个小练习 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ; charset=utf-8" /> <title>2-12 <!-- 引入jQuery -...

    jQuery中:lt选择器用法实例

    此选择器匹配所有小于给定索引值的元素。 索引值最小是从0开始的。 语法结构: 代码如下:$(“:lt(index)”) 此选择器一般也要和其他选择器配合使用,比如类选择器和元素选择器等等。 例如: 代码如下:$(“li:lt(3)”...

    jQuery基本选择器选择元素使用介绍

    基本选择器:是jQuery中使用最频繁的选择器,它由元素Id、Class、元素名、多个选择符组成,通过基本选择器可以实现大多数页面元素的查找,感兴趣的朋友可以参考下哈

    jQuery中复合属性选择器用法实例

    主要介绍了jQuery中复合属性选择器用法,实例分析了复合属性选择器匹配同时满足多个属性条件元素的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics