【详解强大的jQuery选择器之基本选择器、层次选择器_jquery】教程文章相关的互联网学习教程文章

jquery表单对象属性过滤选择器实例分析

本文实例讲述了jquery表单对象属性过滤选择器用法。分享给大家供大家参考。具体分析如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>表单对象属性过滤选择器</title> <script src="jquery-1.6.2.min.js"...

jQuery选择器源码解读(五):tokenize的解析过程

以下分析基于jQuery-1.10.2.js版本。 下面将以$("div:not(.class:contain(span)):eq(3)")为例,说明tokenize和preFilter各段代码是如何协调完成解析的。若想了解tokenize方法和preFilter类的每行代码的详细解释,请参看如下两篇文章: //www.gxlcms.com/article/63155.htm //www.gxlcms.com/article/63163.htm 下面是tokenize方法的源码,为了简便期间,我把有关缓存、逗号的匹配以及关系符的匹配的代码全部去掉了,只留了与当前例...

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

近期看了一些网上关于Sizzle的分析文章,就匹配次序往往就说使用了从右到左的逆向匹配法,但是具体如何并没有详细介绍,或者就像我之前的几篇文章一样,就代码一行一行做详细介绍,但缺乏整体概念,这里就jQuery-1.10.2版本的Sizzle的匹配逻辑(预编译结果)做一整体说明,这里就不谈过多的细节了。 Sizzle的匹配过程采用的是以从右到左的逆向匹配法为基础的改进版本,因为HTML的搜索毕竟和文本匹配有差异,它有自己独特的一面,所...

jQuery选择器源码解读(七):elementMatcher函数

要读懂Sizzle的Compile执行过程,首先需要弄清楚涉及的各个子程序的功能和关键变量和作用,我将逐一对jQuery-1.10.2版本的Compile代码进行说明,望能给予大家帮助。 elementMatcher(matchers) 1、源码代码如下: function elementMatcher(matchers) { return matchers.length > 1 ? function(elem, context, xml) { var i = matchers.length; while (i--) { if (!matchers[i](elem, context, xml)) { return false; ...

jQuery选择器源码解读(八):addCombinator函数

function addCombinator(matcher, combinator, base) 1、源码代码如下: function addCombinator(matcher, combinator, base) { var dir = combinator.dir, checkNonElements = base && dir === "parentNode", doneName = done++; return combinator.first ? // Check against closest ancestor/preceding element function(elem, context, xml) { while ((elem = elem[dir])) { if (elem.nodeType === 1 || checkNonEl...

jQuery选择器源码解读(三):tokenize方法

/** tokenize方法是选择器解析的核心函数,它将选择器转换成两级数组groups* 举例:* 若选择器为“div.class,span”,则解析后的结果为:* group[0][0] = {type:'TAG',value:'div',matches:match}* group[0][1] = {type:'CLASS',value:'.class',matches:match}* group[1][0] = {type:'TAG',value:'span',matches:match}* 由上述结果可以看出,groups的每一个元素以逗号分隔的选择器块的解析结果,* 另外,上述结果中的matches等...

jQuery选择器源码解读(四):tokenize方法的Expr.preFilter

Expr.preFilter是tokenize方法中对ATTR、CHILD、PSEUDO三种选择器进行预处理的方法。具体如下:Expr.preFilter : {"ATTR" : function(match) {/** 完成如下任务:* 1、属性名称解码* 2、属性值解码* 3、若判断符为~=,则在属性值两边加上空格* 4、返回最终的mtach对象* * match[1]表示属性名称,* match[1].replace(runescape, funescape):将属性名称中的十六进制数解码成* 单字节unicode字符或双字节unicode字符(中文或其它需...

jQuery选择器源码解读(一):Sizzle方法

对jQuery的Sizzle各方法做了深入分析(同时也参考了一些网上资料)后,将结果分享给大家。我将采用连载的方式,对Sizzle使用的一些方法详细解释一下,每篇文章介绍一个方法。 若需要转载,请写明出处,多谢。/** Sizzle方法是Sizzle选择器包的主要入口,jQuery的find方法就是调用该方法获取匹配的节点* 该方法主要完成下列任务:* 1、对于单一选择器,且是ID、Tag、Class三种类型之一,则直接获取并返回结果* 2、对于支持querySele...

jQuery选择器源码解读(二):select方法

/** select方法是Sizzle选择器包的核心方法之一,其主要完成下列任务:* 1、调用tokenize方法完成对选择器的解析* 2、对于没有初始集合(即seed没有赋值)且是单一块选择器(即选择器字符串中没有逗号),* 完成下列事项:* 1) 对于首选择器是ID类型且context是document的,则直接获取对象替代传入的context对象* 2) 若选择器是单一选择器,且是id、class、tag类型的,则直接获取并返回匹配的DOM元素* 3) 获取最后一个id、clas...

jquery通过closest选择器修改上级元素的方法

本文实例讲述了jquery通过closest选择器修改上级元素的方法。分享给大家供大家参考。具体如下: 这段代码演示了jQuery通过closest选择器获取上一级的元素,然后修改其text()内容。 <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title> www.gxlcms.com </title> <script type=text/javascript src=jquery-1.9.1.js></script> <script type=text/javascript> //<![CDATA[ $...

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

基本选择器 基本选择器是jQuery中最常用的选择器,也是最简单的选择器,它通过元素id、class和标签名等来查找DOM元素。在网页中,每个id名称只能使用一次,class允许重复使用。 选择器 描述返回 示例#id根据给定的id匹配一个元素单个元素$("#test")选取id为test的元素.class根据给定的类名匹配元素集合元素$(".test")选取所有class为test的元素element根据给定的元素名称匹配元素集合元素$("p")选取所有...

NodeJS使用jQuery选择器操作DOM

注* 这是一个两年多的“老”项目,可以让你在NodeJS中使用jQuery的选择器,像操作前端DOM一样操作后端的HTML/XML,在去除浏览器兼容相关代码后,比JSDOM的操作快8倍. 之前我们曾经提到JSDOM有严重的性能问题: Debug调试Node.JS:我们是如何定位内存泄漏和无限循环的 cheerio 快速,灵活,在服务器端使用的jQuery。 简介 测试你的服务器端HTML:代码如下: var cheerio = require(cheerio), $ = cheerio.load(<h2 class="title">Hello w...

JQuery选择器绑定事件及修改内容的方法

本文实例讲述了JQuery选择器绑定事件及修改内容的方法。分享给大家供大家参考。具体实现方法如下:代码如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Hello World jQuery!</title> <script type="text/javascript" src="jquery-1.3.2.min.js"></script> </head> <body> <div id="divMsg">Hello World!</div> <input id="btnShow" type="button" value="显示" /> <input id="btnHide" type="button" value="隐藏...

jQuery选择器querySelector的使用指南

简介 HTML5向Web API新引入了document.querySelector以及document.querySelectorAll两个方法用来更方便地从DOM选取元素,功能类似于jQuery的选择器。这使得在编写原生JavaScript代码时方便了许多。 用法 两个方法使用差不多的语法,都是接收一个字符串参数,这个参数需要是合法的CSS选择语法。代码如下: element = document.querySelector(selectors); elementList = document.querySelectorAll(selectors);其中参数selectors 可以...

jQuery 选择器详解【图】

$()函数在很多JavaScript类库中都被作为一个选择器函数来使用,在jQuery中就是.$(“#id”)通过id来获取元素,用来代替document.getElementById()函数.$(“tagName”)通过标签名来获取元素,用来代替document.getElementsByTagName()函数.jQuery的基本语法是:$(selector).action(), selector即选择器. jQuery选择器的分类jQuery的选择器基本可以分为四大类:基本选择器(basic)层次选择器(level)过滤选择器(filter)表单选择器(form)有些类...