目录标题
JQuery
1. 概念:
jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
jquery,也就是js框架,本质就是一些js文件,封装了js的原生代码
2. 快速入门
1.jquery的下载 目前有三大版本
1.x:兼容ie678,使用最为广泛的,官方只做BUG维护, 功能不再新增。因此一般项目来说,使用1.x版本就可以了, 最终版本:1.12.4 (2016年5月20日)
2.x:不兼容ie678,很少有人使用,官方只做BUG维护, 功能不再新增。如果不考虑兼容低版本的浏览器可以使用2.x, 最终版本:2.2.4 (2016年5月20日)
3.x:不兼容ie678,只支持最新的浏览器。除非特殊要求, 一般不会使用3.x版本的,很多老的jQuery插件不支持这个版本。 目前该版本是官方主要更新维护的版本。最新版本:3.2.1(2017年3月20日)
2.jquery-1.4.2.js与jquery-1.4.2.min.js的区别:
jquery-xxx.js 开发版本,给我们程序员看的,有良好的缩进和换行,
jquery-xxx.min.js 生产版本,在程序中使用,没有缩进,优点是体积小,加载更快捷
导入js,也就是导入jquery文件
3.开始使用 $("").html() = 元素.innerHTML;
3. JQuery对象和JS对象区别与转换:
1.jq对象在操作的时候,更加方便
2.jq和js在很很多方法上是不相同的
3.两者怎么互相转换: jq—>js jq对象[索引] 或者 jq对象.get(索引) js—>jq $(js对象)
4.入口函数
jq:
$(function(){ });
js:
window.onoload = function() {}
注意: js只能定义一次,如果定义多次,后边的会将前面的覆盖掉, $(funciton(){}) 可以定义多次
5.样式控制控制
div1.css(“backgroundColor”,“red”);
6.事件的绑定
div1.click(function()
4. 选择器:筛选具有相似特征的元素
- 分类
- 基本选择器
- 标签选择器(元素选择器)
- 语法: $(“html标签名”) 获得所有匹配标签名称的元素
- id选择器
- 语法: $("#id的属性值") 获得与指定id属性值匹配的元素
- 类选择器
- 语法: $(".class的属性值") 获得与指定的class属性值匹配的元素
- 并集选择器:
- 语法: $(“选择器1,选择器2…”) 获取多个选择器选中的所有元素
- 层级选择器
- 后代选择器
- 语法: $("A B ") 选择A元素内部的所有B元素
- 子选择器
- 语法: $(“A > B”) 选择A元素内部的所有B子元素
- 属性选择器
- 属性名称选择器
- 语法: $(“A[属性名]”) 包含指定属性的选择器
- 属性选择器
- 语法: $(“A[属性名=‘值’]”) 包含指定属性等于指定值的选择器
- 复合属性选择器
- 语法: $(“A[属性名=‘值’][]…”) 包含多个属性条件的选择器
- 过滤选择器
- 首元素选择器
- 语法: :first 获得选择的元素中的第一个元素
- 尾元素选择器
- 语法: :last 获得选择的元素中的最后一个元素
- 非元素选择器
- 语法: :not(selector) 不包括指定内容的元素
- 偶数选择器
- 语法: :even 偶数,从 0 开始计数
- 奇数选择器
- 语法: :odd 奇数,从 0 开始计数
- 等于索引选择器
- 语法: :eq(index) 指定索引元素
- 大于索引选择器
- 语法: :gt(index) 大于指定索引元素
- 小于索引选择器
- 语法: :lt(index) 小于指定索引元素
- 标题选择器
- 语法: :header 获得标题(h1~h6)元素,固定写法
- 表单过滤选择器
- 可用元素选择器
- 语法: :enabled 获得可用元素
- 不可用元素选择器
- 语法: :disabled 获得不可用元素
- 选中选择器
- 语法: :checked 获得单选/复选框选中的元素
- 选中选择器
- 语法: :selected 获得下拉框选中的元素
5. DOM操作
- 内容操作 html() innerHTML 获取/设置(在函数里面写参数)标签体内容 text() 获取/设置标签的纯文本内容 val() 获取/设置标签的属性值
- 属性操作
1.通用属性 attr() remoceAttr() prop() 与attr一样,但是有区别 removeProp() * attr 和 prop 区别?
1. 如果操作的是元素的固有属性,则建议使用 prop
2. 如果操作的是元素自定义的属性,则建议使用 attr
- 对 class 属性操作
- addClass():添加 class 属性值
- removeClass():删除 class 属性值
- toggleClass():切换 class 属性 * toggleClass(“one”):
- 判断如果元素对象上存在 class=“one”,则将属性值 one 删除掉。 如果元素对象上不 存在 class=“one”,则添加 3. css():
- CRUD 操作:
- append():父元素将子元素追加到末尾 * 对象
1.append(对象 2): 将对象 2 添加到对象 1 元素内部,并且在末尾- prepend():父元素将子元素追加到开头 * 对象
1.prepend(对象 2):将对象 2 添加到对象 1 元素内部,并且在开头- appendTo(): * 对象
1.appendTo(对象 2):将对象 1 添加到对象 2 内部,并且在末尾- prependTo(): * 对象
1.prependTo(对象 2):将对象 1 添加到对象 2 内部,并且在开头- after():添加元素到元素后边 * 对象
1.after(对象 2): 将对象 2 添加到对象 1 后边。对象 1 和对象 2 是兄弟关系- before():添加元素到元素前边 * 对象
1.before(对象 2): 将对象 2 添加到对象 1 前边。对象 1 和对象 2 是兄弟关系- insertAfter() * 对象
1.insertAfter(对象 2):将对象 2 添加到对象 1 后边。对象 1 和对象 2 是兄弟关 系- insertBefore() * 对象
1.insertBefore(对象 2): 将对象 2 添加到对象 1 前边。对象 1 和对象 2 是兄弟 关系- remove():移除元素 * 对象.remove():将对象删除掉
- empty():清空元素的所有后代元素。 * 对象.empty():将对象的后代元素全部清空,但是保留当前对象以及其属性节点
JQuery入门案例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="资料/jquery版本/jquery-1.4.2.min.js"></script>
</head>
<body>
<div id="div1">div1...</div>
<div id="div2">div2...</div>
<script type="text/javascript">
/*var div1=$("#div1");
var div2=$("#div2");*/
var div1=document.getElementById("div1");
var div2=document.getElementById("div2");
alert(div1.html());
alert(div2.innerHTML);
</script>
</body>
</html>