<4>jQuery(上)

1 jQuery简介

  jQuery 是一个 JavaScript 函数库。
  jQuery 是一个轻量级的"写的少,做的多"的 JavaScript 库,可以实现很多浏览器的兼容问题。


2 jQuery语法

  通过 jQuery,可以选取(查询,query) HTML 元素,并对它们执行"操作"(actions)。
  jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作。

基础语法: $(selector).action()

  • 美元符号定义 jQuery
  • 选择符(selector)“查询"和"查找” HTML 元素
  • jQuery 的 action() 执行对元素的操作

$ 是 jQuery 的核心函数,能完成 jQuery 的很多功能。$()就是调用$这个函数

1、传入参数为 [ 函数 ] 时:
  表示页面加载完成之后。相当于 window.onload = function(){}
2、传入参数为 [ HTML 字符串 ] 时:
  会为我们创建这个 html 标签对象
3、传入参数为 [ 选择器字符串 ] 时:
   $(“#id 属性值”); id 选择器,根据 id 查询标签对象
   $(“标签名”); 标签名选择器,根据指定的标签名查询标签对象
   $(“.class 属性值”); 类型选择器,可以根据 class 属性查询标签对象
4、传入参数为 [ DOM 对象 ] 时:
   会把这个 dom 对象转换为 jQuery 对象


3 jQuery 对象和 dom 对象区分

3.1 什么是 jQuery 对象,什么是 dom 对象

Dom 对象

  • 1.通过 getElementById()查询出来的标签对象,是 Dom 对象
  • 2.通过 getElementsByName()查询出来的标签对象,是 Dom 对象
  • 3.通过 getElementsByTagName()查询出来的标签对象,是 Dom 对象
  • 4.通过 createElement() 方法创建的对象,是 Dom 对象

jQuery 对象

  • 1.通过 JQuery 提供的 API 创建的对象,是 JQuery 对象
  • 2.通过 JQuery 包装的 Dom 对象,是 JQuery 对象
  • 3.通过 JQuery 提供的 API 查询到的对象,是 JQuery 对象

3.2 jQuery 对象的本质

jQuery 对象是 dom 对象的数组 + jQuery 提供的一系列功能函数。

3.3 Dom 对象和 jQuery 对象互转

1、dom 对象转化为 jQuery 对象

  • 先有 DOM 对象
  • $( DOM 对象 ) 就可以转换成为 jQuery 对象

2、jQuery 对象转为 dom 对象

  • 先有 jQuery 对象
  • jQuery 对象[下标]取出相应的 DOM 对象

4 jQuery 选择器

4.1 基本选择器

#ID 选择器:根据 id 查找标签对象
例:当用户点击按钮后,有 id=“test” 属性的元素将被隐藏;

$(function(){
	$("button").click(function(){
		$("#test").hide();
	});
});

.class 选择器:根据 class 查找标签对象
例:用户点击按钮后所有带有 class=“test” 属性的元素都隐藏;

$(function(){
	$("button").click(function(){
		$(".test").hide();
	});
});

注:以下三个选择器,格式与上两条类似,不再举例;
element 选择器:根据标签名查找标签对象
*选择器:表示任意的,所有的元素
selector1,selector2 组合选择器:合并选择器 1,选择器 2 的结果并返回

4.2 层级选择器

  • ancestor descendant 后代选择器:
      在给定的祖先元素下匹配所有的后代元素
    例:选取 <div> 元素的后代的所有 <span> 元素
$("div span")
  • parent > child 子元素选择器:
      在给定的父元素下匹配所有的子元素
    例:选取 <div> 元素的直接子元素的 <span> 元素
$("div > span")
  • prev + next 相邻元素选择器:
      匹配所有紧接在 prev 元素后的 next 元素
    例:选取与每个 <div> 元素相邻的下一个 <p> 元素
$("div + p")
  • prev ~ sibings 之后的兄弟元素选择器:
      匹配 prev 元素之后的所有 siblings 元素
    例:选取 <div> 元素同级的所有 <p> 元素
$("div ~ p")

4.3 过滤选择器

  • :first 获取第一个元素
    例:选取第一个 <p> 元素
$("p:first")
  • :last 获取最后个元素
  • :not(selector) 去除所有与给定选择器匹配的元素
  • :even 匹配所有索引值为偶数的元素,从 0 开始计数
  • :odd 匹配所有索引值为奇数的元素,从 0 开始计数
  • :eq(index) 匹配一个给定索引值的元素
  • :gt(index) 匹配所有大于给定索引值的元素
  • :lt(index) 匹配所有小于给定索引值的元素
  • :header 匹配如 h1, h2, h3 之类的标题元素
  • :animated 匹配所有正在执行动画效果的元素

4.4 内容过滤器

:contains(text) 匹配包含给定文本的元素
例:选取所有包含 “is” 的 <p> 元素

$("p:contains(is)")

:empty 匹配所有不包含子元素或者文本的空元素
:parent 匹配含有子元素或者文本的元素
:has(selector) 匹配含有选择器所匹配的元素的元素

4.5 属性过滤器

[attribute] 匹配包含给定属性的元素。
例:选取带有 id 属性的每个元素

$("[id]")

[attribute=value]匹配给定的属性是某个特定值的元素
例:选取 id 属性值为 “choose” 的每个元素

$("[id=choose]")

[attribute!=value] 匹配所有不含有指定的属性,或者属性不等于特定值的元素。
例:选取所有 class 属性值不为 “intro” 的 <p> 元素

$("p[class!='intro']")

[attribute^=value] 匹配给定的属性是以某些值开始的元素
例:选取所有带有以 “nation” 开头的 name 属性的 <input> 元素

$("input[name^='nation']")

[attribute$=value] 匹配给定的属性是以某些值结尾的元素
例:选取所有带有以 “.org” 结尾的 href 属性的 <a> 元素

$("a[href$='.org']")

[attribute*=value] 匹配给定的属性是以包含某些值的元素
例:选取所有带有包含字符串 “nation” 的 name 属性的 <input> 元素

$("input[name*='nation']")

[attrSel1][attrSel2][attrSelN] 复合属性选择器,需要同时满足多个条件时使用。

4.5 表单过滤器

:input 匹配所有 input, textarea, select 和 button 元素
例:选取所有 input 元素:

$(":input")

:text 匹配所有 文本输入框
例:选取带有 type=“text” 的 元素

$(":text")

:password 匹配所有的密码输入框
:radio 匹配所有的单选框
:checkbox 匹配所有的复选框
:submit 匹配所有提交按钮
:image 匹配所有 img 标签
:reset 匹配所有重置按钮
:button 匹配所有 input type=button 按钮
:file 匹配所有 input type=file 文件上传
:hidden 匹配所有不可见元素 display:none 或 input type=hidden

4.6 表单对象属性过滤器

:enabled 匹配所有可用元素
例:选取所有启用的表单元素

$(":enabled")

:disabled 匹配所有不可用元素
:checked 匹配所有选中的单选,复选,和下拉列表中选中的 option 标签对象
:selected 匹配所有选中的 option

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值