选择器

作者: 梨啊梨 | 来源:发表于2017-10-03 16:57 被阅读0次

jQuery id选择器:    

 类似于 getElementById

$("#id") :id选择器:一个用来查找的ID,即元素的id属性

①、id是唯一的,每个id值在一个页面中只能使用一次。

②、如果多个元素分配了相同的id,将只匹配该id选择集合的第一个DOM元素。

③、超过一个元素的页面使用相同的id是无效的


类选择器: $( ".class" )   

 类似于getElementsByClassName

类选择器,相对id选择器来说,效率相对会低一点,但是优势就是可以多选。

jQuery在实现上,对于类选择器,如果浏览器支持,jQuery使用JavaScript的原生getElementsByClassName()函数来实现的。


元素选择器:

$("ele") :根据给定(html)标记名称选择所有的元素

等价于:js原生方法getElementsByTagName()函数支持


通配符*全选择器

$("*")选择所有的元素


层级选择器

//子选择器

//$("div > p")选择所有div元素里面的子元素P

//后代选择器

//$("div  p") 选择所有div元素里面的p元素

//相邻兄弟选择器

//$("prev + div")选取prev后面的第一个的div兄弟节点

//一般相邻选择器

//$("prev ~ div")选取prev后面的所有的div兄弟节点

$( "parent > child" )

子选择器:选择所有指定“parent”元素中指定的"child"的直接子元素。

$("ancestor descendant")

后代选择器:选择给定的祖先元素的所有后代元素, 一个元素的后代可能是该元素的一个孩子,孙子,曾孙等

$("prev + next")

相邻兄弟选择器:选择所有紧接在“prev”元素后的“next”元素

$("prev ~ siblings")

一般兄弟选择器:匹配“prev”元素之后的所有 兄弟元素。具有相同的父元素,并匹配过滤“siblings”选择器

http://www.imooc.com/code/8342

基本筛选选择器

http://www.imooc.com/code/8344

内容筛选选择器

$(".div:contains(':contains')"):查找所有class="div"中DOM元素中包含"contains"的元素节点(包含指定文本的意思)

$(".div:has(span)"):查找所有class="div"中DOM元素中包含"span"的元素节点(包含指定元素的意思)

$(".a:parent"):选择所有包含子元素或者文本的a元素

$(".a:empty"):与parent相反,找到a元素下面的所有空节点(没有子元素)

http://www.imooc.com/code/8345

可见性筛选选择器

我们有几种方式可以隐藏一个元素:

CSS display的值是none。

type="hidden"的表单元素。

宽度和高度都显式设置为0。

一个祖先元素是隐藏的,该元素是不会在页面上显示

CSS visibility的值是hidden

CSS opacity的指是0


属性筛选选择器

属性选择器让你可以基于属性来定位一个元素。可以只指定该元素的某个属性,这样所有使用该属性而不管它的值,这个元素都将被定位,也可以更加明确并定位在这些属性上使用特定值的元素

举例

属性筛选选择器:

$('div[name=p1]'): //查找所有div中,属性name=p1的div元素

$('div[p2]'): //查找所有div中,有属性p2的div元素

$('div[name|="-"]')//查找所有div中,有属性name中的值只包含一个连字符“-”的div元素,或以连字符‘-’相连的前缀为字符“-”的div

$('div[name~="a"]')    //查找所有div中,有属性name中的值包含一个连字符“空”和“a”的div元素,以空格风格的属性中有属性值a

$('div[name^=imooc]') //查找所有div中,属性name的值是用imooc开头的

$('div[name$=imooc]') //查找所有div中,属性name的值是用imooc结尾的

$('div[name*="test"]')//查找所有div中,有属性name中的值包含一个test字符串的div元素

$('div[testattr!="true"]')//查找所有div中,有属性testattr中的值没有包含"true"的div

http://www.imooc.com/code/8347

子元素筛选选择器

子元素筛选选择器不常使用,其筛选规则比起其它的选择器稍微要复杂点

1   :first只匹配一个单独的元素,但是:first-child选择器可以匹配多个:即为每个父级元素匹配第一个子元素。这相当于:nth-child(1)

2   :last 只匹配一个单独的元素, :last-child 选择器可以匹配多个元素:即,为每个父级元素匹配最后一个子元素

3   如果子元素只有一个的话,:first-child与:last-child是同一个

4   :only-child匹配某个元素是父元素中唯一的子元素,就是说当前子元素是父元素中唯一的元素,则匹配

5   jQuery实现:nth-child(n)是严格来自CSS规范,所以n值是“索引”,也就是说,从1开始计数,:nth-child(index)从1开始的,而eq(index)是从0开始的

6   nth-child(n) 与 :nth-last-child(n) 的区别前者是从前往后计算,后者从后往前计算

http://www.imooc.com/code/8348

表单元素选择器

除了input筛选选择器,几乎每个表单类别筛选器都对应一个input元素的type值。大部分表单类别筛选器可以使用属性筛选器替换。比如 $(':password') == $('[type=password]'

http://www.imooc.com/code/8350

表单对象属性筛选选择器

除了表单元素选择器外,表单对象属性筛选选择器也是专门针对表单元素的选择器,可以附加在其他选择器的后面,主要功能是对所选择的表单元素进行筛选

注意事项:

选择器适用于复选框和单选框,对于下拉框元素, 使用 :selected 选择器

http://www.imooc.com/code/8352

特殊选择器this

$(this)

相关文章

  • css3选择器总结

    选择器分基本选择器和拓展选择器 基本选择器:id选择器,类选择器,元素选择器,通用选择器 拓展选择器:群组选择器,...

  • 「CSS 」选择器

    选择器简单选择器标签选择器类选择器id 选择器通配符选择器属性选择器伪类选择器其他选择器伪元素选择器组合选择器选择...

  • CSS 理解

    选择器 通用选择器: id选择器 class选择器 元素选择器 子选择器 后代选择器 伪类选择器 伪元素选择器: ...

  • CSS 学习总结

    CSS 选择器 { 样式 } 选择器:基础选择器(单个选择器物),复合选择器物 基础选择器:标签选择器,类选择器,...

  • CSS选择器

    通用选择器 元素选择器 类选择器 ID选择器 群组选择器 后代选择器 子代选择器 伪类选择器 通用选择器 元素选择...

  • CSS知识树

    css选择器 基础选择器ID选择器类选择器属性选择器元素选择器组合选择器多元素选择器 ,格式:E,F后代选择器,格...

  • CSS 选择器

    CSS选择器的概念 标签选择器 类选择器 ID选择器 类选择器与ID选择器的区别 子代选择器 后代选择器 子选择器...

  • CSS3 基本选择器

    回顾选择器 通配选择器 元素选择器 类选择器 ID选择器 后代选择器 新增基本选择器 子元素选择器(直接后代选择器...

  • ## CSS选择器

    ## CSS选择器 # 标签选择器 # id选择器 # 类选择器 # 后代选择器 # 子元素选择器 # 交集选择器...

  • css选择器

    id选择器,class选择器,层次选择器,后代选择器,标签选择器,元素选择器。

网友评论

      本文标题:选择器

      本文链接:https://www.haomeiwen.com/subject/urcaextx.html