文章目录

  • 引入JQuery
  • 下载JQuery
  • JQuery与JavaScript入口函数的区别
  • 常规选择器
  • 1.基本选择器
  • 2.层次选择器
  • 3.过滤选择器
  • 1.基本过滤选择器
  • 2.内容过滤选择器
  • 3.可见性过滤选择器
  • 4.属性过滤选择器
  • 5.子元素过滤选择器
  • 6.表单对象属性过滤选择器
  • 4.表单选择器


引入JQuery

在javascript中有两种方式引入JQuery库:

  • 引入自己下载下来的JQuery库
  • 从 CDN或百度 中载入 jQuery, 如从 Google 中加载 jQuery
//从百度中引入jQuery库
  <head>
  	<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js">
  	</script>
  </head>

jQuery 库是一个 JavaScript 文件,可以使用 HTML 的 <script> 标签引用它:

<head>
	<script src="jquery-1.12.4.js"></script>
</head>

下载JQuery

JQuery有两个版本可供下载:

  • Production version 用于实际的网站中,已被精简和压缩
  • Development version 用于测试和开发(未压缩,是可读的代码)

JQuery与JavaScript入口函数的区别

win.onload

$(document).ready()

必须等文档的所有的内容(包括图片或一些大型的元素)都加载完以后才执行

文档中的DOM节点加载完以后就会执行

多次执行,之前的会被覆盖(也就是只能执行一次)

可以多次执行,之前的并不会被覆盖

无简写方式

简写方式:$(function() { });

常规选择器

JQuery最核心的组成部分,选择器引擎继承了css语法,不必担心浏览器的兼容性

1.基本选择器

选择器

描述

返回

示例

#id

根据给定的id匹配一个元素

单个元素

$(’#test’)选取id为test的元素

.class

根据给定的类名匹配元素

集合元素

$(’.test’)选取所有class为test的元素

element

根据给定的元素名匹配元素

集合元素

$(‘p’)选取所有的<p>标签

selector1,selector2,……,selectorN

将每一个选择器匹配到的元素合并后一起返回

集合元素

$(‘div,span,a.class’)选取所有<div>,<span>与class为class的<a>标签的一组元素

2.层次选择器

选择器

描述

返回

示例

$(ancestor descendant’)

选取ancestor元素里的所有descendant后代元素

集合元素

$(‘div span’)选取<div>里的所有的<span>元素

$(‘parent> child’)

选取parent元素下的child子元素,$(‘ancestor descendant’)选择的是后代元素

集合元素

$(‘div> span’)选取<div>元素下元素名是span的子元素

$(‘prev + next’)

选取紧接在prev元素后的next元素

集合元素

$(’.one + div’)选取class为one的下一个<div>元素

$(‘prev ~ siblings’)

选取prev元素之后的所有siblings元素

集合元素

$(’#two ~ div’)选取id为two的元素后面的所有<div>兄弟元素

3.过滤选择器

1.基本过滤选择器

选择器

描述

返回

示例

:first

选取第一个元素

单个元素

$(‘div:first’)选取所有<div>元素中第一个<div>元素

:last

选取最后一个元素

单个元素

$(‘div:last’)选取所有<div>元素中最后一个<div>元素

:not(selector)

去除所有与给定选择器匹配的元素

集合元素

$(‘input:not(.myClass)’)选取class不是myClass的<input>元素

:even

选取索引是偶数的所有元素,索引从0开始

集合元素

$(‘input:even’)选取索引值是偶数的<input>元素

:odd

选取索引是奇数的所有元素,索引从0开始

集合元素

$(‘input:odd’)选取索引值是奇数的<input>元素

:eq(index)

选取索引等于index的元素,index从0开始

单个元素

$(‘input:eq(1)’)选取索引等于1的<input>元素

:gt(index)

选取索引大于index的元素,index从0开始

集合元素

$(‘input:gt(1)’)选取索引大于1的<input>元素

:lt(index)

选取索引小于index的元素,index从0开始

集合元素

$(‘input:lt(1)’)选取索引小于1的<input>元素

:header

选取所有的标题元素,如h1,h2,h3等

集合元素

$(’:header’)选取页面中所有的<h1>、<h2>、<h3>……

:animated

选取当前正在执行动画的所有元素

集合元素

$(‘div:animated’)选取正在执行动画的<div>元素

2.内容过滤选择器

选择器

描述

返回

示例

:contains(text)

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

集合元素

$('div:contains(“我”)‘)选取含有文本"我"的<div>元素

:empty

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

集合元素

$(‘div:empty’)选取不包含子元素(包括文本元素)的<div>空元素

:has(selector)

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

集合元素

$(‘div:has(p)’)选取含有<p>元素的<div>元素

:parent

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

集合元素

$(‘div:parent’)选取含有子元素(包括文本元素)的<div>元素

3.可见性过滤选择器

选择器

描述

返回

示例

:hidden

选取所有不可见的元素

集合元素

$(’:hidden’)选取所有不可见的元素,包括<input type = ‘hidden’ />、<div style = ‘display : none;’ >和<div style = ‘visibility : hidden;’>等元素。如果只想选取<input>元素,可以使用$(‘input:hidden’)

:visible

选取所有可见的元素

集合元素

$(‘div:visible’)选取所有可见的<div>元素

在可见性过滤选择器中,需要注意选择器:hidden,它不包括样式属性display为none的元素,但包括文本隐藏域<input type = ‘hidden’/>和<div style = ‘visibility : hidden;’>

4.属性过滤选择器

选择器

描述

返回

示例

[attribute]

选取拥有此属性的元素

集合元素

$(‘div[id]’)选取拥有属性id的元素

[attribute = value]

选取属性的值为value的元素

集合元素

$(‘div[title = test]’)选取属性title为test的<div>元素

[attribute != value]

选取属性的值不等于value的元素

集合元素

$(‘div[title != test]’)选取属性title不等于test的<div>元素。注意:没有属性title的<div>元素也会被选取

[attribute ^= value]

选取属性的值以value开始的元素

集合元素

$(‘div[title ^= test]’)选取属性title以test开始的<div>元素

[attribute $= value]

选取属性的值以value结束的元素

集合元素

$(‘div[title $= test]’)选取属性title以test结束的<div>元素

[attribute *= value]

选取属性的值含有value介绍的元素

集合元素

$(‘div[title *= test]’)选取属性title含有test的<div>元素

[selector1][selector2]……[selectorN]

用属性过滤选择器合并成一个复合属性过滤选择器,满足多个条件。每选择一次,缩小一次范围

集合元素

$(‘div[id][title $= test]’)选取拥有属性id,并且属性title以test结束的<div>元素

5.子元素过滤选择器

选择器

描述

返回

示例

:nth-child(index/even/odd/equation)

选取每个父元素下的第index个子元素或者奇偶元素(index从1算起)

集合元素

:eq(index)只匹配一个元素,而:nth-child将为每一个父元素匹配子元素,并且:nth-child(index)的index是从1开始的,而:eq(index)是从0算起的

:first-child

选取每个元素的第一个子元素

集合元素

:first只返回单个元素,而:first-child选择符将为每个父元素匹配第一个元素。例如,$(‘ul li:first-child’)选取每个<ul>中第一个<li>元素

:last-child

选取每个父元素的最后一个子元素

集合元素

同样,last只返回单个元素,而:last-child选择符将为每个父元素匹配最后一个子元素。例如,$(‘ul li:last-child’)选取每个<ul>中最后一个<li>元素

:only-child

如果某个元素是它父元素中唯一的子元素,那么将会被匹配。如果父元素中含有其他元素,则不会被匹配

集合元素

$(‘ul li:only-child’)在<ul>中选取是唯一子元素的<li>元素

6.表单对象属性过滤选择器

选择器

描述

返回

示例

:enabled

选取所有可用元素

集合元素

$(’#form1 :enabled’)选取id为form1的表单内的所有可用元素

:disabled

选取所有不可用元素

集合元素

$(’#form2 :disabled’)选取id为form2的表单内的所有不可用元素

:checked

选取所有被选中的元素(单选按钮、复选框)

集合元素

$(‘input:checked’)选取所有被选中的<input>元素

:selected

选取所有被选中的选项元素(下拉列表框)

集合元素

$(‘select:selected’)选取所有被选中的选项元素

4.表单选择器

选择器

描述

返回

示例

:input

选取所有的<input>、<textarea>、<select>和<button>元素

集合元素

$(’ :input’)选取所有<input>、<textarea>、<select>和<button>元素

:text

选取所有的单行文本框

集合元素

$(’ :text’)选取所有的单行文本框

:password

选取所有的密码框

集合元素

$(’ :password’)选取所有的密码框

:radio

选取所有的单选按钮

集合元素

$(’ :radio’)选取所有的单选按钮

:checkbox

选取所有的复选框

集合元素

$(’ :checkbox’)选取所有的复选框

:submit

选取所有的提交按钮

集合元素

$(’ :submit’)选取所有的提交按钮

:image

选取所有的图像按钮

集合元素

$(’ :image’)选取所有的图像按钮

:reset

选取所有的重置按钮

集合元素

$(’ :reset’)选取所有的重置按钮

:button

选取所有的按钮

集合元素

$(’ :button’)选取所有的按钮

:file

选取所有的上传域

集合元素

$(’ :file’)选取所有的上传域

:hidden

选取所有不可见元素

集合元素

$(’ :hidden’)选取所有不可见元素(已经在可见性过滤选择器中写过)