`
pleasetojava
  • 浏览: 703285 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

JQuery CSS 选择符

阅读更多

CSS 选择符

$ 函数可以根据传入的 ID 取得元素,但对于结构复杂的页面,单传入一个 ID 难于精确取到相应的元素,myJSFrame 参考 CSS 2.0 选择符概念与 JQuery 框架中 CSS 选择符的引用形式,实现了自有的 CSS 选择符支持方式。支持大部分常见的 CSS 选择符。

由于符合 CSS 选择符的元素可能有多个,因此 $ 函数的返回值可能不止一个 DOM 元素,一般来说,其返回值是符合选择符的 DOM 元素组成的数组。但为保留并兼容 $ 函数的返回值类型,经典的 $(ID) 返回值仍为 DOM 元素,而 $(CSS Selectors) 返回值为元素数组。

$ 函数的 CSS 选择符功能够更方便、迅速、准确地找到页面元素。

目前 myJSFrame 已经支持的选择符有:

  • 通配选择符
  • 属性选择符
  • 包含选择符
  • ID 选择符
  • 类选择符
  • 选择符分组

不支持的通配符有:

  • 子对象选择符
  • 伪类及伪对象选择符

如果传入 $ 函数的参数中带有空格(两端的空格无效)、逗号或小数点都将被认作 CSS 选择符,空格是包含选择符,逗号是选择符分组,小数点是类选择符。除此之外,都被认作是元素 ID ,返回值是一个 DOM 元素。如果要获取页面中所有的 li 元素,$("li") 是错误的,因为 $ 函数会认为要获取 ID 为 li 的元素,正确的方法是 $("body li") 。

参数

通配选择符
获取某范围里的所有元素。通配符匹配到的元素范围广,取得的结果相对较大,效率略低,建议少用。
属性选择符
匹配元素的属性与其值都符合的元素。属性选择符的格式为:[属性名=属性值] 或者 [属性名!=属性值]。 属性选择符可以有多重,比如 input[type=text][className=username]。
包含选择符
一个选择符被另一选择符所包含。如 $("div a") 表示 div 元素中包含的 a 元素。
ID 选择符
根据ID属性匹配元素,$("id") 与 $("#id") 完全等效。返回类型都是 DOM 元素。$("body div #id") 是不必要的写法,其返回值是数组,但长度为 1。
类选择符
根据元素的类名查找元素。$("div.content") 表示查找页面中类名为 content 的元素。类选择符是属性选择符的特例,相当于 $("div[className=content]"),但不建议用属性选择符来查找类名,因为元素的类名可以有多个(类名间用空格分割)。
选择符分组
多个选择符组合在一起可以是一个复合选择符,多个复合选择符或多个单一选择符可以是多组选择符(用逗号分割)。如:$("div.content,a") 表示页面中所有类名为 content 的 div 元素与页面中所有的 a 元素组合在一起作返回值数组。

返回值

由 DOM 元素组成的一维数组。如果传入 $ 函数的选择符在页面中查找不到符合条件的元素,返回值为空数组(长度为0)。

示例

<div class="titleList" id="newsTitle">
<ul class="list black">
<li><a href="http://localhost/olympic.asp?id=2000">2000年悉尼奥运会</a></li>
<li><a href="http://localhost/olympic.asp?id=1996">1996年亚特兰大奥运会</a></li>
</ul>
<ul class="list gray">
<li><a href="http://localhost/olympic.asp?id=1992">1992巴塞罗那奥运会</a></li>
<li><a href="http://localhost/olympic.asp?id=1988">1988汉城奥运会</a></li>
</ul>
<div class="info">
<input type="checkbox" value="read" id="hasReadThsRule" />已阅读
<input type="checkbox" id="suggest">我有更好的建议
<input type="button" value="确定" />
</div>
</div>

选择符 示例代码 说明 返回值长度
(数组长度) 通配选择符 属性选择符 包含选择符 ID 选择符 类选择符 选择符分组
$("#newsTitle *") #newsTitle 元素下面的所有元素 14
(ul*2 + li*4 + a*4 + div*1 + input*3)
$("#newsTitle input[type=checkbox][value!=read]") #newsTitle 元素下面标签名为 input,其 type 为 checkbox,且其 value 不等于read的元素 1
$("ul li a") 返回页面中所有 ul 中的所有 li 里的所有 a 的数组 4
$("#newsTitle") 返回 #newsTitle 元素 1
$("ul.list") 页面中所有类名包含 list 的 ul 元素 2
$("a,input[type=checkbox]") 页面中所有 a 与勾选框的数组 6
分享到:
评论

相关推荐

    jQuery表单占位符动画插件.zip

    jQuery表单占位符动画插件.zip

    初窥JQuery(一)jquery选择符 必备知识点

    CSS选择符包括通配选择符、ID选择符、属性选择符、包含选择符、类选择符等,他们的基本格式为: 通配选择符:$(“#ID *”) 表示该元素下的所有元素。 ID选择符:$(“#ID”) 表示获得指定ID的元素。 属性选择符:$...

    JQUERY的属性选择符和自定义选择符使用方法(二)

    }) 属性选择也可以用组合方式: $(‘a[href^=http] [href*=wangorg]’).addClass(‘abold’) 自定义选择符是JQUERY添加的独有的完全不同的选择符,语法与CSS中的伪类选择符语法相同,即选择符以一个冒号(:)开头...

    jQuery 关于伪类选择符的使用说明

    jQuery选择器的强大不仅在于选择器支持基本的css选择符,还支持很多CSS的伪类选择符,甚至可以自定义选择符

    jQuery 选择符详细介绍及整理

    CSS选择符, 如: $(‘#title1 &gt; li’)为取得ID为title1(#title)的子元素(&gt;)中所有的列表项(li)。 $(‘#title1 li:not(.class1)’)为取得ID为title的后代元素中没有(not)class1类的所有列表项。 jQuery库支持XPath...

    新浪的jQuery拖动排序插件ysdsort

     注意事项:本插件和一般的jquery插件用法一样 $('选择符').ysdsort({插件参数})。 但是需要注意这里的“选择符”只能用class的选择选择符,不能使用ID,或者标签名称等其他选择符形式。 而且这个class名称是为拖动...

    最新jquery.1.8.1

    此外,选择器引擎Sizzle修复了一些边缘问题和bug,包括对于多个选择符(~ &gt; +)的改进、更好地检测浏览器bug等。 5. XSS防护 $()方法可以创建HTML元素,如果被用来传递一个[removed]标签,则可以运行脚本。...

    JQuery基础教程(中文高清版)电子书_part2

    2.1 DOM 2.2 工厂函数$() 2.3 CSS选择符 2.4 XPath选择符 2.5 自定义选择符 2.6 DOM遍历方法 2.7 访问DOM元素 2.8 小结第3章 事件——扣动扳机 3.1 在页面加载后执行任务 3.1.1 代码执行的时机选择 ...

    jquery占位符动画插件Placeholdem.zip

    jquery占位符动画插件Placeholdem.zip

    JQuery权威指南源代码

    jQuery控制CSS样式 第2章 使用JavaScript实现隔行变色 使用jQuery选择器实现隔行变色 JavaScript代码检测页面元素 jQuery代码检测页面元素 使用jQuery基本选择器 使用jQuery层次选择器 使用jQuery基本过滤...

    jquery基础入门教程

    1.第1章 jQuery入门 11.1 jQuery能做什么 11.2 ...2.第2章 选择符——取得你想要的一切 102.1 DOM 102.2 工厂函数$() 112.3 CSS选择符 112.4 XPath选择符 142.5 自定义选择符 162.6 DOM遍历方法 

    最新JQuery版本1.8

    此外,选择器引擎Sizzle修复了一些边缘问题和bug,包括对于多个选择符(~ &gt; +)的改进、更好地检测浏览器bug等。 5. XSS防护 $()方法可以创建HTML元素,如果被用来传递一个[removed]标签,则可以运行脚本。...

    jquery插件使用方法大全

     jQuery 1.0(2006年8月):该库的第一个稳定版本,已经具有了对CSS选择符、事件处理和AJAX交互的稳健支持。 jQuery 1.1(2007年1月):这一版大幅简化了API。许多较少使用的方法被合并,减少了需要掌握和解释的...

    jQuery权威指南-源代码

    1.2.3 jQuery控制页面CSS /9 1.3 本章小结/11 第2章 jQuery 选择器/12 2.1 jQuery选择器概述/13 2.1.1 什么是选择器/13 2.1.2 选择器的优势/13 2.2 jQuery选择器详解/17 2.2.1 基本选择器/18 2.2.2 层次...

    《精通Javascript+jQuery》光盘源码

     3.3 CSS选择器  3.3.1 标记选择器  3.3.2 类别选择器  3.3.3 ID选择器  3.3.4 选择器集体声明  3.3.5 选择器的嵌套  3.3.6 子选择器  3.3.7 属性选择器  3.4 CSS设置文字效果  3.4.1 CSS文字...

    jQuery详细教程

    提示:jQuery 使用的语法是 XPath 与 CSS 选择器语法的组合。在本教程接下来的章节,您将学习到更多有关选择器的语法。 文档就绪函数 您也许已经注意到在我们的实例中的所有 jQuery 函数位于一个 document ready ...

    jQuery打字动画文本占位符特效.zip

    jQuery打字动画文本占位符特效.zip

    CSS选择器测试器「CSS Selector Tester」-crx插件

    确保你的CSS选择符与你打算的元素匹配! 1.3.3 - 小错误修复,固定图标。 1.3.2 - 小错误修复。 1.3.1 - 测试和小错误修复。 1.3.0 - 修复的负载,UI清理。更新jQuery,删除未使用的CSS等 1.2.0 - 增加了所有的URL...

    jQuery基础教程(第四版)

    第2章讲述如何通过jQuery中的选择符表达式及DOM遍历方法,在页面中的任何地方找到想要的元素。这一章将展示如何使用各种选择符表达式为页面中的不同元素添加样式,其中一些是通过纯CSS方式做不到的。 第3章介绍如何...

Global site tag (gtag.js) - Google Analytics