隐式迭代
$(“选择器”).css(“background-color”,”red”)则是为这组元素中每个元素的样式都加上红色背景。jQuery会自动迭代每个元素,这就免去了我们编写代码遍历每个元素对象的操作。
无需判断对象是否存在
如果页面上不存在id为test的DOM 元素,$(“#test”).css(“background-color”,”red”)不会产生任何异常,而document.getElementById(“test”).style.backgroundColor=’red’就会产生未找到对象的异常。
虽然jQuery这样操作不会产生异常,但是我们在开发jQuery插件的时候,是有必要判断jQuery选择器有没有获取到元素的,这样可以在插件未正常获取到元素的时候,可以立即停止插件的运行,可以提高性能而且减少意外情况的发生。如何获取呢?可以这样
1
|
if ($( "选择器" ).length
> 0){
|
上面一段文字貌似和今天要说的jQuery层次选择器好像没多大关系呢,呵呵~~的确,上面的东西是我临时想起来的,感觉比较实用,所以就在这里和大家说一下,也好让对此没有多少了解的人解决一下疑惑。
那接下来我们来说一下这个jQuery层次选择器的用法,其实jQuery层次选择器只有两种用法:
-
$(“ancestor descendant”):选取parent元素后所有的child元素
ancestor的中文意思是“祖先”,descendant的中文意思是“后代”
$(“body div”) |
选取body元素下所有的div元素。 |
$(“ul li”) |
选取ul元素下所有的li元素。 |
$(“#test div”) |
选取id为“test”的元素所包含的所有的div子元素 |
$(“div#test div”) |
选取id为“test”的div所包含的所有的div子元素 |
$(“.test div”) |
选取class为“test”的元素所包含的所有的div子元素 |
$(“div.test span”) |
选取class为“test”的div所包含的所有的span子元素 |
$(“span.test .demo”) |
选取class为“test”的span所包含的所有的class为demo的元素 |
$(“.test .demo”) |
选取class为“test”的元素所包含的所有的class为demo的元素 |
-
$(“parent > child”):选取parent元素后所有的直属child元素,何谓“直属”,也就是第一级的意思了
$(“body > div”) |
选取body元素下所有的第一级div元素。 |
$(“ul > li”) |
选取ul元素下所有的第一级li元素。 |
$(“#test > div”) |
选取id为“test”的元素所包含的所有的第一级div子元素 |
$(“div#test > div”) |
选取id为“test”的div所包含的所有的第一级div子元素 |
$(“.test > div”) |
选取class为“test”的元素所包含的所有的第一级div子元素 |
$(“div.test > span”) |
选取class为“test”的div所包含的所有的第一级span子元素 |
$(“span.test > .demo”) |
选取class为“test”的span所包含的所有的第一级class为demo的元素 |
$(“.test > .demo”) |
选取class为“test”的元素所包含的所有的第一级class为demo的元素 |
-
$(“prev + next”):prev和next是两个同级别的元素. 选中在prev元素后面的next元素.
$(“#demo+img”)选在id为demo元素后面的img对象.如果id为demo元素后面没有同级的img对象,那么这个$(“#demo+img”).length=0
-
$(“prev ~ siblings”):选择prev后面的根据siblings过滤的元素。注:siblings是过滤器
$(“#demo~[title]“)选择id为demo的元素后面所有带有title属性的元素,同样如果id为demo的元素后面没有一个带有title属性的元素,那么$(“#demo~[title]“).length = 0
分享到:
相关推荐
《jQuery基础教程第四版》是学习JavaScript库jQuery的重要参考资料,其中"Book02_jQuery_选择元素"这一章节主要探讨了如何在DOM(文档对象模型)中高效地选取和操作元素,这是jQuery的核心功能之一。在jQuery中,...
《jQuery基础教程(第四版)》是一本非常适合各层次前端开发者学习和参考的经典教程。无论你是初学者还是有经验的专业人士,都能从这本书中找到有价值的信息和技巧。通过对jQuery核心组件的详细介绍,本书不仅有助于...
3. **层次选择器**: 包括 `>`(子元素选择器)、`(父元素选择器,不常用)、`>`(后代选择器)和 `:nth-child()` 等,如: ```javascript $("#parent > div"); // 直接子元素选择器 $("ul li:nth-child(2)"); //...
层次选择器 - **子元素选择器**: 使用`>`来选取指定元素的直接子元素,如`$("parent > child")`。 - **后代选择器**: 使用空格来选取指定元素的所有后代元素,如`$("parent child")`。 - **相邻兄弟选择器**: 使用...
jQuery提供了丰富的选择器,包括基本选择器(如`#id`,`.class`,`tag`),层次选择器(如`>`,`+`,`~`),属性选择器(如`[attr=value]`),以及表单选择器(如`:input`,`:text`,`:checked`)。这些选择器可以...
- jQuery还提供了其他多种选择器,如属性选择器、层次选择器等。 3. jQuery DOM操作 - jQuery简化了DOM操作,比如修改元素的文本内容、属性、类名等。例如: ```javascript $('#elementId').text('新的文本内容...
### jQuery基础教程08知识点详解 #### 一、jQuery简介 jQuery是一款优秀的JavaScript库,它极大地简化了HTML文档遍历、事件处理、动画以及Ajax交互等操作,使得开发者能够更轻松地编写出功能丰富的Web应用。jQuery...
- **层次选择器**:如`$("div p")`选择`<div>`内的所有`<p>`元素。 - **属性选择器**:如`$("[href]")`选择所有带有`href`属性的元素。 - **子元素过滤选择器**:如`$("li:first")`选择每个`<ul>`中的第一个`<li>`...
### Jquery基础教程第二部分详解 #### 一、前言 在上一部分的Jquery基础教程中,我们已经对Jquery的基本概念、安装方法及基本语法进行了深入浅出的讲解。这一部分将继续深入探讨Jquery的核心功能与应用场景,旨在...
尽管提供的部分内容似乎并不包含实际的教学内容,而是重复的网址链接,我们依然可以根据标题和描述来构建一个详细的关于jQuery基础教程的知识点概述。 ### jQuery基础教程03 #### 一、jQuery简介 - **定义**:...
### jQuery基础教程详解 #### 一、jQuery技术框架概述 jQuery是一种流行的JavaScript库,它极大地简化了HTML文档遍历、事件处理、动画以及Ajax交互等常见的网页开发任务。本章节将详细介绍jQuery的基础知识及其...
包括基本选择器(如ID、类名、标签名)、层次选择器(如后代、子元素、相邻兄弟、后续兄弟)以及属性选择器等。 2. **DOM操作**:jQuery提供了丰富的API来操作HTML元素,如`$(selector).html()`用于设置或获取元素...
二、层次选择器 1. 子元素选择器:`$("parent > child")` 选取父元素的所有直接子元素,如`$("div > p")`选取所有直接位于div内的p元素。 2. 后代选择器:`$("ancestor descendant")` 选取祖先元素内的后代元素,...
- `jQuery选择器.doc` 文件可能详细介绍了jQuery的各种选择器,包括基础选择器(如ID、类、元素名)、层次选择器(如后代、子元素、相邻兄弟、后续兄弟)、属性选择器以及表单选择器等。理解并熟练运用选择器可以...
2. **jQuery选择器**:学习如何使用jQuery提供的各种选择器,如基本选择器(ID、类、元素名)、层次选择器、属性选择器等,以高效地选取DOM元素。 3. **DOM操作**:掌握如何使用jQuery来添加、删除、修改HTML元素,...