JQUERY-定义-查找
正课:
1. 什么是jQuery
2. 如何使用jQuery
3. 查找
1. 什么是jQuery
第三方开发的 执行DOM操作的 极简化的 函数库
第三方: 下载
执行DOM操作: 学习jQuery,还是在学DOM
极简化: jQuery是DOM操作的终极简化: 4个方面:
1. 增删改查
2. 事件绑定
3. 动画
4. Ajax
函数库: jQuery中一切都是函数
为什么: 2个原因:
1. 终极简化
2. 解决了大部分浏览器兼容性问题:
凡是jQuery让用的,都没有兼容性问题
如果不兼容,jQuery在底层用程序模拟实现
2. 如何使用:
3步:
1. 上官网看是什么:
2. 看快速入门:
3. 下载手册,备查:
下载: 版本:
1.x 兼容旧浏览器
未压缩: jquery-1.11.3.js
具有: 完备的注释,代码格式和见名知意的变量名
可读性好,体积大——开发和学习阶段使用
压缩: jquery-1.11.3.min.js
移除所有注释, 清除所有空字符格式,极简化变量名
体积小,可读性差——生产环境
2.x 不再兼容旧浏览器
3.x 也不兼容旧浏览器,还增加了新功能
1. 所有代码运行在严格模式下
2. 支持for...of,代替原有each()
3. 新动画API: requestAnimationFrame()
4. 支持Promise
引入: 2种:
1. 将js文件下载的项目本地
2. 引入CDN网络中的js文件
CDN网络: 内容分发网络
可根据客户端据不同服务器的网络状况,自动选择最优的服务器下载资源
原理:
引入jquery.js,其实是在全局创建了一种新类型: 2部分
1. 构造函数: 创建jQuery类型的子对象
2. 原型对象: 保存所有jQuery类型的子对象共有API
创建jQuery类型的子对象:
什么是jQuery类型的子对象: 专门封装一个或多个DOM元素,并提供操作DOM元素的简化版API
本质是一个类数组对象。
为什么: 普通DOM元素不是jQuery类型,不能用简化版API
只有将找到的DOM元素,放入jQuery对象中,才能使用简化版API
何时: 只要想使用jQuery的简化版API,都要先创建jQuery对象
如何: 2种:
1. 用选择器查找DOM元素,并创建jQuery对象:
var $elems=new jQuery("selector")
先找到符合selector要求的DOM元素,再创建一个jQuery类型的子对象,保存找到的DOM元素
简化: var jQuery=function("selector"){//工厂函数
return new 构造函数("selector")
}// jQuery("selector") 等效于 new 构造函数()
更简化: window.jQuery = window.$ = jQuery;
//调用$() 等效于调用jQuery()
对原型对象的简化: jQuery.fn = jQuery.prototype = {
jQuery.fn也是jQuery类型的原型对象的别名
2. 直接将获得的DOM元素封装进jQuery对象:
var $elem=$(dom元素对象);
3. 查找:
1. 按选择器查找:
jQuery支持所有CSS选择器,并扩展了部分自有的选择器
基本选择器: 5个 同CSS
#id element .class * selector1,selector2,...
层级选择器: 4个 同CSS
parent child parent>sub prev+next prev~nextsiblings
子元素过滤: 4个 同CSS
特点: 在各自父元素内分别编号,从1开始
:first-child :last-child :nth-child(n) :only-child
基本过滤(位置过滤): 7个 jQuery中新增
特点: 先取出所有符合条件的元素放入一个集合中统一编号。编号从0开始
:first/last :even/odd :eq/gt/lt(i)
属性过滤: 同CSS
[属性名]
[属性名=值]
[属性名^=值]
[属性名$=值]
[属性名*=值]
[属性名!=值]
input.txt[title=用户名]
何时:代替class选取多个元素,添加行为
可见性过滤: 2个:
:visible :hidden(display:none input type="hidden")
内容过滤: 2组:
1. 用子元素或内容的特征判断父元素:
1. 以内容文本作为特征: :contains(text)
2. 以子元素特征: :has(选择器)
2. 以是否有子元素或内容为条件:
:parent 非空
:emty 空
表单元素过滤:
:input 选择所有表单元素(input select textarea button)
每种type都有专门的选择器:
:text :password :radio :checkbox :file :submit...
状态过滤: :enabled :disabled :checked :selected
2. 按节点间关系查找:
2大类:
1. 父子:
$elem.parent() 父元素
$parent.children() 直接子元素
$parent.children().first()
$parent.children().last()
2. 兄弟:
$elem.next()
$elem.prev()
$elem.is("selector") 判断$elem是否符合selector选择器的要求
$elem.show()/hide() 代替display="block"/"none"
$elem.css("CSS属性名","属性值") style.css属性名=值
$elem.html("内容") innerHTML="内容"
jQuery API三大规律:
1. 自带遍历: 对整个jQuery对象调用API等效于对其中每个DOM元素都调用一次API
2. 一个函数两用: 给新值,就修改。没给新值,就返回旧值
3. 返回当前正在操作的jQuery对象本身
JQUERY-定义-查找的更多相关文章
- jQuery的查找
children([expr])概述 :取得一个包含匹配的元素集合中每一个元素的所有子元素的元素集合.可以通过可选的表达式来过滤所匹配的子元素.注意:parents()将查找所有祖辈元素,而child ...
- jquery zTree 查找所有的叶子节点
jquery zTree 查找所有的叶子节点 // 保存所有叶子节点 10 为初始化大小,并非数组上限 var arrayObj = new Array([10]); /* treeNode: 根节点 ...
- 利用js和JQuery定义一个导航条菜单
利用js和JQuery定义一个导航条 效果: 一.html代码: <div class="Maintenance"> <div class="Title ...
- 在jQuery定义自己函数
刚才有学习<在jQuery定义自己的扩展方法函数>http://www.cnblogs.com/insus/p/3415312.html .现在想练习一下定义自定义函数.经重构之后,还是发 ...
- JQuery中查找父元素,子元素,追加元素,插入元素和删除元素 及其他常用方法
Jquery之所以强大,和其在获取对象时使用与css选择器兼容的语法有很大关系.而且它还兼容了CSS3的选择器,而且多出了不少. 所以jQuery的选择器也就变得很多很强大.就最基本的有以下四个: $ ...
- js进阶 11-19 jquery如何查找选择器的第一个父亲元素和第一个定位的父元素
js进阶 11-19 jquery如何查找选择器的第一个父亲元素和第一个定位的父元素 一.总结 一句话总结:closest()方法获得匹配选择器的第一个祖先元素,从当前元素开始沿 DOM 树向上.of ...
- js进阶 11-16 jquery如何查找元素的父亲、祖先和子代、后代
js进阶 11-16 jquery如何查找元素的父亲.祖先和子代.后代 一.总结 一句话总结:过滤或者查找的方法里面可以带参数进行进一步的选择. 1.parent()和parents()方法的区别是什 ...
- jQuery元素查找方式
jQuery常用的元素查找方法总结 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到 ...
- jquery元素查找方法集锦
jQuery常用的元素查找方法总结 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到 ...
- jquery元素查找方法
$("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素 $("div&q ...
随机推荐
- PAT 乙级 1091 N-自守数 (15 分)
1091 N-自守数 (15 分) 如果某个数 K 的平方乘以 N 以后,结果的末尾几位数等于 K,那么就称这个数为“N-自守数”.例如 3×922=25392,而 25392 的末尾两位正好是 ...
- CRM 模拟用户
web api 模拟用户 转:https://blog.csdn.net/vic0228/article/details/80649615 var req = new XMLHttpRequest() ...
- SqlServer常用内置函数
--======================================= -- SQL常用内置函数 --======================================= --判 ...
- 论气机之"左升右降"
生命现象源于气机的出入升降运动. “出入废则神机化灭,升降息则气立孤危.故非出入,则无以生长壮老已:非升降,则无以生长化收藏”(<素问·六微旨大论>),升降是气机主要的运动形式之一,是 ...
- Java笔试面试题整理第二波
转载至:http://blog.csdn.net/shakespeare001/article/details/51200163 作者:山代王(开心阳) 本系列整理Java相关的笔试面试知识点,其他几 ...
- Idea中运行项目时出现:未结束的字符串解决方案
一般出现这种情况是编码不一致导致 解决办法: settings>file Encodings 编码设置成一致
- MYSQL性能优化(2)
Insert语句优化 1. 多行并为一个语句 insert into table values (行1),(行2),........... 2. 使用中间内存队列, 逻辑是立马执行插入,其他数据放 ...
- 判断文件的唯一性--MD5
JAVA中获取文件MD5值的四种方法 JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获 ...
- 微信小程序--预览previewImage(长按保存图片)
最近开发小程序,想实现二维码图片长按保存,发现无法保存,只能让图片先预览,再保存.注意:只有太阳码才有长按保存和识别功能,普通二维码只有长按保存功能. <image class='banner' ...
- centos系统有多个内核,修改默认启动内核
打开系统文件 vim /boot/grub/grub.conf default=0,意思是GRUB在默认情况下,也就是用户没有选择的情况下,去启动显示在用户界面的第一个系统:GRUB启动系统时是从0 ...