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选取所有可见元素
  • 内容伪类选择器

    内容伪类选择器,就是根据元素中的文字内容或所包含的子元素特征来选择元素,其文字内容可以模糊或绝对匹配进行元素定位。

    • :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选择器大全的更多相关文章

  1. js进阶 9 js操作表单知识点总结

    js进阶 9 js操作表单知识点总结 一.总结 一句话总结:熟记较常用的知识点,对于一些不太常用的知识点可以在使用的时候查阅相关资料,在使用和练习中去记忆. 1.表单中学到的元素的两个对象集合石什么? ...

  2. js进阶 9-14 js如何实现下拉列表多选移除

    js进阶 9-14 js如何实现下拉列表多选移除 一.总结 一句话总结: 1.js如何实现下拉列表多选移除? 把这个下拉列表中的option移除,然后加到另外一个下拉列表(文字)中去.remove方法 ...

  3. js进阶 9-12 js如何实现级联菜单 (章节测试)

    js进阶 9-12  js如何实现级联菜单 (章节测试) 一.总结 一句话总结: 1.js如何实现级联菜单 ? 二维数组,以第一级菜单的文本值做键,以对应的二级菜单选项的文本做值 2.用哪个属性可以获 ...

  4. js进阶 9-6 js如何通过name访问指定指定表单控件

    js进阶 9-6 js如何通过name访问指定指定表单控件 一.总结 一句话总结:form中控件的三种访问方式:2formElement 1document 1.form中控件的三种访问方式? 1.f ...

  5. js进阶 9-5 js如何确认form的提交和重置按钮

    js进阶 9-5 js如何确认form的提交和重置按钮 一.总结 一句话总结: 1.这个并不好做:onsubmit 里面的代码必须返回false才能取消onsubmit方法的执行,所以,有return ...

  6. JS进阶 ] 分析JS中的异步操作

    写在前面 JS因为是单线程的,所以在执行事务的时候,往往会因为某个事务的延迟,而导致服务器假死,这时候异步编程就显的格外重要,但是异步编程一般理解为回调函数callback,典型的就是node,回调函 ...

  7. JS进阶篇--JS数组reduce()方法详解及高级技巧

    基本概念 reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值. reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被 ...

  8. JS进阶系列-JS执行期上下文(一)

    ❝ 点赞再看,年薪百万 本文已收录至https://github.com/likekk/-Blog欢迎大家star,共同进步.如果文章有出现错误的地方,欢迎大家指出.后期将在将GitHub上规划前端学 ...

  9. js进阶 10-3 jquery中为什么用document.ready方法

    js进阶 10-3  jquery中为什么用document.ready方法 一.总结 一句话总结: 1.document.ready和window.onload的区别:用哪个好? document. ...

随机推荐

  1. JSP页面开发规范案例

    添加 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncodi ...

  2. 常见c#正则表达式类学习整理

    1.MatchCollection类 用于输入字符串所找到的成功匹配的集合,Regex.Matches 方法返回 MatchCollection 对象 用法 //str:要搜索匹配项的字符串 patt ...

  3. 不是IT圈人的IT创业优劣势!

    不是IT圈人的IT创业优势: 1)更尊重市场导向而非技术   2)更关注产品细节而非技术  3)更关注企业平衡而非技术 不是IT圈人的IT创业劣势: 1)因营销而放弃技术规划   2)因需求而丧失技术 ...

  4. JAVA 水题

    纯粹是让我来掌握熟练度的. 1.金蝉素数 某古寺的一块石碑上依稀刻有一些神秘的自然数. 专家研究发现:这些数是由1,3,5,7,9 这5 个奇数字排列组成的5 位素数,且同时去掉它的最高位与最低位数字 ...

  5. iOS_01_C语言简介

    1.先学C语言的原因 * oc基于C. * oc 跟 C的思想和语法很多地方不太一样,而且OC能和C混用. * C 是所有编程语言中的经典,很多高级语言都是从C语言中衍生出来的,比如 C++,C#.O ...

  6. 最短路算法详解(Dijkstra/SPFA/Floyd)

    新的整理版本版的地址见我新博客 http://www.hrwhisper.me/?p=1952 一.Dijkstra Dijkstra单源最短路算法,即计算从起点出发到每个点的最短路.所以Dijkst ...

  7. StackExchange.Redis 官方文档(六) PipelinesMultiplexers

    原文:StackExchange.Redis 官方文档(六) PipelinesMultiplexers 流水线和复用 糟糕的时间浪费.现代的计算机以惊人的速度产生大量的数据,而且高速网络通道(通常在 ...

  8. Python内部机制-PyObject对象

    PyObject对象机制的基石 学过Python的人应该非常清晰,Python中一切都是对象,全部的对象都有一个共同的基类,对于本篇博文来说,一切皆是对象则是探索Python的对象机制的一个入口点.我 ...

  9. [D3] Better Code Organization with selection.call() with D3 v4

    Most of D3’s native selection APIs also return the selection (or a new selection), to enable multipl ...

  10. Leetcode 第 2 题(Add Two Numbers)

    Leetcode 第 2 题(Add Two Numbers) 题目例如以下: Question You are given two linked lists representing two non ...