js 进阶 10 js选择器大全
js 进阶 10 js选择器大全
一、总结
一句话总结:和css选择器很像
二、JQuery选择器
原生javaScript中,只能使用getELementById()、getElementByName、getElementByTagName()等几种有限的方法来获取元素,JQuery为我们提供了大量的选择器,极大地方便了我们快速选择元素来进行各种操作。
JQuery的选择器完全是继承了css选择器的风格,大家在学习JQuery选择器的时候,一定要先联系CSS选择器进行对比记忆。
虽然选择器很多,但是并不要求大家一下子全记住。可以先记住常用的几种,其他的等到需要的时候查阅下资料。因为这些选择器,我们是必须通过真正的开发实践才能够真正的熟练掌握
1. 基本选择器
- id选择器:$("#id名")
- 元素选择器:$("元素名")
- 类选择器:$(".类名")
- 群组选择器:$("选择器1,选择器2,.......,选择器n")
- *选择器:$("*")选择所有元素
2.层级选择器
层次选择器,就是能过元素之间的层次关系来获取元素.常见的层次关系包括:父子、后代、兄弟、相邻。
- $("M N")后代选择器,选择M元素内部后代N元素
- $("M>N")子代选择器,选择M元素内部子代N元素
- $("M~N")兄弟选择器,选择M元素后所有的同级N元素
- $("M+N")相邻选择器,选择M元素相邻的下一个元素
3. 属性选择器
HTML元素通常包含很多属性,JQuery的属性选择器就是把各种属性作为选择器。
- $("selector[attr]")选择包含给定属性的元素
- $("selector[attr='value']")选择给定的属性是某个特定值的元素
- $("selector[attr!='value']")选择所有含有指定的属性,但属性不等于特定值的元素
- $("selector[attr*='value']")选择给定的属性是以包含某些值的元素
- $("selector[attr^='value']")选择给定的属性是以某些值开始的元素(比较少用)
4. 伪类选择器
伪类选择器也称作过滤选择器。
JQuery伪类选择器都是以英文冒号“:”开头,和css中的伪类选择器用法相似,使得我们可以快速地选择我们想要获取的元素。
- 简单伪类选择器元素
- :not(selector)选择除了某个选择器之外的所有元素
- :first或first()选择某元素的第一个元素(非子元素)
- :last或last()选择某元素的最后一个元素(非子元素)
- :odd选择某元素的索引值为奇数的元素
- :even选择某元素的索引值为偶数的元素
- :eq(index)选择给定索引值的元素,索引值index是一个整数,从0开始
- :lt(index)选择所有小于索引值的元素,索引值index是一个整数,从0开始
- :header选择h1~h6的标题元素:focus选取当前具有焦点的元素
- :root选择页面的根元素
- :animated选择所有正在执行动画效果的元素
- 子元素伪类选择器
- :first-child选择父元素的第1个子元素
- :last-child选择父元素的最后1个子元素
- :nth-child(n)选择父元素下的第n个元素或奇偶元素,n的值为"整数|odd|vevn
- :only-child选择父元素中唯一的子元素(该父元素只有一个子元素)
- :first-of-type选择同元素类型的第1个同级兄弟元素
- :last-of-type选择同元素类型的最后1个同级兄弟元素
- :nth-of-type选择同元素类型的第n个同级兄弟元素,n的值可以是"整数|odd|even"
- :onlt-of-type匹配父元素中特定类型的唯一子元素(但是父元素可以有多个子元素)
- 可见性伪类选择器
- :hidden选取所有不可见元素
“:hidden”选择器选择的不仅包括样式为display:none所有元素,而且还包括属性type=”hidden”和样式为visibility:hidden的所有元素。
- :visible选取所有可见元素
- :hidden选取所有不可见元素
- 内容伪类选择器
内容伪类选择器,就是根据元素中的文字内容或所包含的子元素特征来选择元素,其文字内容可以模糊或绝对匹配进行元素定位。
- :contains(text)选择包含给定文本内容的元素
- :has(selector)选择含有选择器所匹配元素的元素
- :empty选择所有不包含子元素或者不包含文本的元素
- :parent选择含有子元素或者文本的元素(跟:empty相反)
- 表单伪类选择器
- : Input选择所有input元素
- :button选择所有type="button"的input元素
- :submit选择所有type="submit"的input元素
- :reset选择所有type="reset"的input元素
- :text选择所有单选文本框
- :textarea选择所有多行文本框
- :password选择所有密码文本框
- :radio选择所有单选按钮
- :checkbox选择所有复选框
- :image选择所有图像域
- :hidden选择所有隐藏域
- :file选择所有文件域
- 表单属性伪类选择器
- :enabled选择所有可用input元素
- :disabled所有禁用的input元素
- :selected选择所有被选中的option元素
- :checked选择所被选中的表单元素,一般用于radio和checkbox
js 进阶 10 js选择器大全
js 进阶 10 js选择器大全的更多相关文章
- js进阶 9 js操作表单知识点总结
js进阶 9 js操作表单知识点总结 一.总结 一句话总结:熟记较常用的知识点,对于一些不太常用的知识点可以在使用的时候查阅相关资料,在使用和练习中去记忆. 1.表单中学到的元素的两个对象集合石什么? ...
- js进阶 9-14 js如何实现下拉列表多选移除
js进阶 9-14 js如何实现下拉列表多选移除 一.总结 一句话总结: 1.js如何实现下拉列表多选移除? 把这个下拉列表中的option移除,然后加到另外一个下拉列表(文字)中去.remove方法 ...
- js进阶 9-12 js如何实现级联菜单 (章节测试)
js进阶 9-12 js如何实现级联菜单 (章节测试) 一.总结 一句话总结: 1.js如何实现级联菜单 ? 二维数组,以第一级菜单的文本值做键,以对应的二级菜单选项的文本做值 2.用哪个属性可以获 ...
- js进阶 9-6 js如何通过name访问指定指定表单控件
js进阶 9-6 js如何通过name访问指定指定表单控件 一.总结 一句话总结:form中控件的三种访问方式:2formElement 1document 1.form中控件的三种访问方式? 1.f ...
- js进阶 9-5 js如何确认form的提交和重置按钮
js进阶 9-5 js如何确认form的提交和重置按钮 一.总结 一句话总结: 1.这个并不好做:onsubmit 里面的代码必须返回false才能取消onsubmit方法的执行,所以,有return ...
- JS进阶 ] 分析JS中的异步操作
写在前面 JS因为是单线程的,所以在执行事务的时候,往往会因为某个事务的延迟,而导致服务器假死,这时候异步编程就显的格外重要,但是异步编程一般理解为回调函数callback,典型的就是node,回调函 ...
- JS进阶篇--JS数组reduce()方法详解及高级技巧
基本概念 reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值. reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被 ...
- JS进阶系列-JS执行期上下文(一)
❝ 点赞再看,年薪百万 本文已收录至https://github.com/likekk/-Blog欢迎大家star,共同进步.如果文章有出现错误的地方,欢迎大家指出.后期将在将GitHub上规划前端学 ...
- js进阶 10-3 jquery中为什么用document.ready方法
js进阶 10-3 jquery中为什么用document.ready方法 一.总结 一句话总结: 1.document.ready和window.onload的区别:用哪个好? document. ...
随机推荐
- CentOS不能进入登录界面
http://blog.csdn.net/powerzone/article/details/6798646
- gplaycli—— 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具
gplaycli-- 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具 这个 GooglePlay市场 中 https://play.google.com/store/a ...
- socket TCP简单通讯
socket 服务器 // // main.m // socket_server // // Created by lujunjie on 2016/11/23. // Copyright © 201 ...
- maven插件介绍之tomcat7-maven-plugin
tomcat7-maven-plugin插件的pom.xml依赖为: <dependency> <groupId>org.apache.tomcat.maven</gro ...
- C++ 中的异或操作^
好好的利用异或能够产生奇妙的效果. 异或运算的性质: 不论什么一个数字异或它自己都等于0.也就是说.假设我们从头到尾依次异或数组中的每个数字,那么终于的结果刚好是那个仅仅出现一次的数字.由于那些出现两 ...
- 删除dataGridview中选中的一行或多行
一.实现的功能:可以删除一行或者多行数据,并在删除前提醒是否确定进行删除! DialogResult RSS = MessageBox.Show(this,"确定要删除选中行数据码?&quo ...
- JS学习笔记 - fgm练习 - 鼠标移入/移出div样式改变
思路: div的默认样式正常设置. 鼠标移入时,发生改变的样式有3个,即 边框颜色,div背景色,字体颜色. 把这三个css改变设置在一个类名下,再通过js给div动态 添加/去除这个类名,实现div ...
- CentOS下利用Docker部署Surging
原文:CentOS下利用Docker部署Surging 1. 安装Centos, 配置固定ip配置文件地址vi /etc/sysconfig/network-scripts/ifcfg-ens33`` ...
- GO语言学习(五)Go 语言基础语法
Go 标记 Go 程序可以由多个标记组成,可以是关键字,标识符,常量,字符串,符号.如以下 GO 语句由 6 个标记组成: fmt.Println("Hello, World!") ...
- Ruby(面向对象程序设计的脚本语言)入门
Ruby是一种为简单快捷的面向对象编程(面向对象程序设计)而创的脚本语言. 简单介绍 Ruby 是开源的,在Web上免费提供,但须要一个许可证. Ruby 是一种通用的.解释的编程语言. Ruby 是 ...