jquery内容过滤选择器有哪些?

:contains(text):empty:has(seletor):parent

先写几个DOM元素的HTML结构:

<div>John Resign</div>
<div>George Martin</div>
<div>Malcom John Sinclair</div>
<div>J.Ohn</div>
<div></div>
<p></p>
<div><p>Has p</p></div>

:contains(text)

E:contains(text)  //E是指DOM元素,:contains(text)包含的文本,text是指定查找的字符串

描述:

选取含有文本内容为“text”的元素

返回值:集合元素

实例:

<script type="text/javascript">
   $(document).ready(function(){
      $('div:contains(John)').css('background','#f36');
   });
</script>

功能:

改变含有文本为“John”的div元素的背景色

效果:

1.png

回到前面的HTML结构中我们可以看出其中有两个div元素中包含了"John"文本,因为我们这里主要是改变了包含文本“John”的div的背景色,因此大家在效果中可以看出我们其中第一个和第三个div的背景色变成了"#f36",为了更能体会从中的变化,大家可以通过Firefox中的Firebug工具看出HTML的变化:

2.png

:empty

E:empty //其中E为DOM元素,:empty是指DOM元素中不包含任何子元素或文本

描述:

选取不含任何子元素或文本的空元素

返回值:集合元素

实例:

<script type="text/javascript">
   $(document).ready(function(){
      $('div:empty').css('background','#f36');
   });
</script>

功能:

改变不含子元素(包括不含文本元素)的div的背景色,换句话说,就是改变不包含任何东西的div的背景色

效果:

3.png

虽然我们前面的html中所有元素中不包含子元素,但有一些包含了文本元素,只有一个div和一个p元素具没有子元素也没有文本内容。加上我们这个例子中,我们只对不包含子元素和文本内容的div进行了改变背景色的设置,所以我们的效果中只有div加上了“#f36”的背景色,同样我们来看看HTML的变化吧:

4.png

:has(selector)

E:has(selector)  //其中E为有效果DOM元素标签,:has(selector)含有一个选择器,selector用于筛选的选择器

描述:

选取含有选择器所匹配的元素的元素

返回值:集合元素

实例:

<script type="text/javascript">
   $(document).ready(function(){
      $('div:has(p)').css('background','#f36');
   });
</script>

功能:

改变含有子元素P的div元素的背景色

效果:

5.png

在我们这个实例中,只有一个div中包含了子元素P,所以包含了符合这个要求的div元素其背景色被设置为“#f36”,改变后的HTML:

6.png

:parent

E:parent  //E为有效的DOM元素标签,:parent含有子元素或文本内容

描述:

选取含有子元素或者文本的元素标签

返回值:集合元素

实例:

<script type="text/javascript">
   $(document).ready(function(){
      $('div:parent').css('background','#f36');
   });
</script>

功能:

改变含有子元素或文本内容的div的背景色。换句话说只在div包含了任何一个子元素或者任何内容,其背景色都将会改变。

效果:

7.png

本例子,只有一个div和一个p元素中不包含任何子元素和文本内容,因为我们这里是对div进行设置,所以效果中显示,除了这两个不含有子元素和任何内容的div的背景色都变成了“#f36”,变化后的HTML:

8.png

Image placeholder
前端答疑
未设置
  81人点赞

没有讨论,发表一下自己的看法吧

推荐文章
jquery基本过滤选择器有哪些?

jquery基本过滤选择器:1、first()或者:first选取第一个元素//选择第一个div元素 $('div:first') $('div').first()2、last()或者:last选取最

jquery可见性过滤选择器有哪些?

jQuery的可见性选择器是根据元素的可见和不可见状态来选择相对应的元素。主要有两个:过滤器名jQuery语法说明返回:hidden$(':hidden')选取所有不可见元素集合元素:visible$

jquery表单选择器有哪些?

jquery表单选择器有哪些?jquery虽然可以使用常规选择器来对表单的元素进行定位,但有时还是不能满足开发者灵活多变的需求。所以,jQuery为表单提供了专用的选择器。:input:选取所有inp

jquery表单过滤器有哪些?

jquery表单过滤器有哪些?jQuery提供了四种表单过滤器,分别在是否可以用、是否选定来进行表单字段的筛选过滤。:enabled:选取所有可用元素:disabled:选取所有不可用元素:check

css常见选择器有哪些?优先级是什么?

选择器也称为选择符,所有的html语言中的标记都是通过css选择器控制的。常见的css选择器有标签选择器、类选择器、id选择器、通配符选择器。1、标签选择器标签选择器,也称为元素选择器。标签选择器的基

css属性选择器有哪些?

css属性选择器有哪些?[attribute]用于选取带有指定属性的元素。该选择器选择包含attribute属性的所有元素,不论attribute的值为何。[attribute=value]用于选取带

jquery中有哪几种类型的选择器?

jQuery选择器一、基本选择器基本选择器是jQuery中最常用也是最简单的选择器,它通过元素的id、class和标签名等来查找DOM元素。1、ID选择器#id描述:根据给定的id匹配一个元素,返回单

jQuery遍历方法有哪些?

jQuery遍历方法有哪些?jquery遍历方法有对象遍历和函数调用两种方式。一、jQuery对象遍历语法:$(集合).each(function(index,item){ //index索引 //i

基于jquery开发的UI框架有哪些?

基于jquery开发的UI框架有哪些?1、国产jQueryUI框架(jUI)DWZDWZ富客户端框架(jQueryRIAframework),是中国人自己开发的基于jQuery实现的AjaxRIA开源

jQuery选择器的的优点是什么

jQuery选择器的的优点1、简洁的写法,说道简洁的写法,给大家列举一下例子,看看jQ和原生哪个更方便。。2、提供了完善的处理机制(完善的兼容处理)3、jQuery选择器判断dom节点存在的方法:4、

jquery有几种选择器?

jquery有几种选择器?很多种,大概归纳为9种。1、基本的有id、标签、类、通配符选择器:#id element .class *2、层次选择器:ancestordescendant parent>

jquery有哪四种表单过滤器?

jQuery提供了四种表单过滤器,分别在是否可以用、是否选定来进行表单字段的筛选过滤。名称说明解释:enabled匹配所有可用元素查找所有可用的input元素:$("input:enabled"):d

jquery有哪些常用事件?

jquery有哪些常用事件?1、$(document).ready()$(document).ready()是jQuery中响应JavaScript内置的onload事件并执行任务的一种典型方式。它和

有哪些常用jQuery UI框架?

jqueryUI框架1、国产jQueryUI框架(jUI)DWZDWZ富客户端框架(jQueryRIAframework),是中国人自己开发的基于jQuery实现的AjaxRIA开源框架.设计目标是简

vue加载优化策略有哪些?

方法一路由懒加载vue.js是一个比较流行的前端框架,与react.js、angular.js相比来说,vue.js入手曲线更加流畅,不管掌握多少都可以快速上手。但是单页面应用也都有其弊病,有时候首屏

vue前端UI框架有哪些?

Vue移动端UI框架1、Vux(star:15620)VUX(读音[v’ju:z],同views)是基于WeUI和Vue(2.x)开发的移动端UI组件库,主要服务于微信页面。暂未适配vue-cli@3

基于vue移动端UI框架有哪些?

vuxVUX(读音[v’ju:z],同views)是基于WeUI和Vue(2.x)开发的移动端UI组件库,主要服务于微信页面。文档地址:https://doc.vux.li/zh-CN/演示地址:ht

数据科学领域的核心技能和新兴技能分别有哪些?

近年来随着大数据的迅速发展,各种各样的数据分析技能也逐渐大热,为了找到数据科学领域目前最常用的技能和未来最流行的应用趋势,我们进行了一项调查。我们确定了数据科学技能的两个主要类别:一个是大多数受访者拥

前端开发人员最困扰的事情有哪些?

前端和后端开发之间的界线正在发生变化。有一些常见的错误会导致前端开发人员增加工作量、浪费时间,本文将介绍一些常见的错误以及如何避免这些错误。公司向他们的开发人员和程序员提出更多的要求,让他们完成与自己

调查:2019年数据分析市场面临的挑战有哪些?

分析和数据科学行业对人才的需求急剧增长,为该行业求职者提供了很多工作机会。无论是500强还是初创企业,每个团队都在使用分析来从数据中获得有价值的信息。然而,在人才、客户定位和收集数据等方面,这个行业仍

ie加载不出css样式的原因有哪些?

ie加载不出css样式的原因有哪些?可能的原因如下:1.HTML页面编码与CSS编码不同(如HTML为gbk,CSS为utf-8);2.CSS文件中未指定@charset头声明,导致IE默认使用页面编

css中变换属性有哪些?

css中变换属性有哪些?1、matrixmatrix(,,,,,)以一个含六值的(a,b,c,d,e,f)变换矩阵的形式指定一个2D变换,相当于直接应用一个[a,b,c,d,e,f]变换矩阵2、tra

HTML内联元素有哪些?

内联元素(inlineelement)也叫内嵌元素或行内元素,一般都是基于语义级(semantic)的基本元素。内联元素只能容纳文本或者其他内联元素,通常被包括在块元素中使用,常见内联元素有“a、b、

智慧城市带来的网络威胁有哪些?

如今,中国城市正在疾步向前拥抱智慧时代,我国是全球智慧城市建设最为积极的国家之一。近年来,智慧城市建设步入快车道时代!据不完全统计,中国智慧城市的发展数量已经超过500个,居世界之最。然而,智慧城市给

css文本属性有哪些?

css文本属性有哪些?1、text-align控制文本的对齐方式2、text-indent控制文本首行的缩进,px或%都可;3、white-space文档中的空白处属性值:(推荐学习:CSS视频教程)