jQuery具体内容:
ECMAScript: 核心语法
变量声明
数据类型:
原始类型: Null String Number Boolean Undefined
引用类型:
运算符:
语句:
函数:
普通函数
匿名函数
事件:
onload
onsubmit
onclick
onchange
onblur
onfocus
事件和事件源绑定:
绑定事件:
直接在事件源(标签)上添加事件属性 <xxx onclick="函数()"></xxx>
派发事件:
<script>
//1.获取事件源对象
//2.派发事件
对象.事件名 = function(){
}
</script>
BOM: 操作和控制浏览器
window: 窗口对象
使用该对象的方法或属性时,window关键字可以省略不写
方法:
alter()
prompt()
confirm()
定时器:
setInterval(函数名,毫秒值);
setTimeout("函数名()",毫秒值);
history: 历史对象
go(1)
location: 连接对象
location.href : 获取当前页面的完整路径
location.href = 值; 跳转到指定的页面
DOM: 操作和控制整个html页面
文档节点: 整个html页面 document
元素节点: 具体的标签对象
属性节点: 标签上的指定属性
文本节点: 标签体的文本信息
获取元素对象:
document.getElementById("id");
.....
获取元素对象上的属性:
元素对象.属性名; 获取
元素对象.属性名 = 值; 设置
文本:
元素对象.innerHTML; //获取标签体的所有内容(包含子标签)
元素对象.innerText; // 获取标签体中的所有文本信息(不包含子标签)
元素对象.innerHTML = "值" ; //在设置值时,可以解析值中的标签对象
元素对象.innerText = "值"; //在设置值时,将值都充当文本信息,放入标签体内
概述
jQuery是一个优秀的javascript框架(js类库),兼容css3和各大浏览器,提供dom,events,animate,ajax等简易的操作。并且jQuery有非常丰富的插件,大多数功能都有相应的插件解决方案。jQuery的宗旨是write less, do more. (写的更少,做的更多)
jq本质上就是一个外部的js文件(jQuery.js),在该文件中封装了很多js代码,实现了很多功能.
我们管jq文件叫做 js 框架或 js 类库.
插件: 实现了指定功能的js代码
jQuery入门
jQuery和html整合
javaScript和jquery区别
注意事项: 使用jquery的方式获取的对象称为jquery对象,
jQuery对象本质上是js对象数组.
使用dom的方式获取的对象称为dom(js)对象, 两者的方法和属性不能混用, 使用jquery的方法和属性时,必须保证对象是jquery对象.
js对象和jquery对象之间的转换
事件(event)
回顾:
js的事件:
onload: 页面加载事件
onclick: 单击事件
onsubmit: 表单提交事件
onblur: 失去焦点
onfocus: 获取焦点
onchange: 改变事件
鼠标事件和键盘事件要求见到认识.
onkeyup:
js的事件和事件源绑定:
方式1: 绑定事件
<xxx onclick="fun()"></xxx>
方式2:派发事件
在js代码中获取事件源对象
var 元素对象 = document.getElementById("id");
元素对象.事件名称 = function(){}
在js的事件中,事件前加on,在jq的事件中没有on,直接写名称即可
jQuery的选择器
基本选择器:★
* 所有
# id
.class
标签选择器(标签名)
多个选择器用","号隔开 a,b
层级选择器:★
a b:选择a的b的后代
a>b:选择a的b孩子
a+b:选择a的b大弟弟
a~b:选择a的所有的b弟弟
属性选择器★
// [属性名] 获取元素上带有该属性名的元素对象
// [属性名='值'] 获取元素上带有该属性名且值为'zhi'的元素对象
属性选择器使用时一般都有和标签选择器联合使用
div[属性名='值']
基本过滤: ★
:first 第一个
:last 最后一个
:even 偶数
:odd 奇数
:eq(index) 索引=
:gt(index) 索引>
:lt(index) 索引<
:not(选择器)
表单对象属性★
jQuery的DOM操作
操作HTML代码/文本/值 ★
val() : 对value属性的操作
html() : 对标签体的操作 (等同于js的innerHTML属性)
jq对象.html(); 获取标签体的内容
jq对象.html("值"); 设置标签体的内容
text() : 对标签体的操作 (等同于js的innerText属性)
jq对象.text(); 获取标签体的内容
jq对象.text("值"); 设置标签体的内容
html和text区别设置内容: html可以将内容解析,text只是作为普通文本获取内容:html获取所有源码内容,text只是获取文本内容
文档处理
内部插入: 作为子标签插入
外部插入: 作为兄弟标签插入
删除:
empty():清空元素 (清空所有的子标签)
remove():移除 (自杀)
属性
class操作
css样式
css
格式1:设置单个属性jq对象.css("属性","值");
格式2:设置多个属性jq对象.css({ "属性":"值", "属性1":"值1"});
设置css样式
获取css样式的值 jq对象.css("属性名称");
获取元素的宽和高
jq对象.width()
jq对象.height()
案例:
案例1-表格隔行换色
需求分析:
当页面加载成功后,给表格的奇数行和偶数行添加不同的背景颜色,表头除外.
技术分析:
jQuery:
页面加载成功事件:
$(function(){})
$(document).ready(function(){});
选择器:
css样式: css方法
步骤分析:
....
案例2-全选和全不选
需求分析:
当点击头部的复选框时,让其他的复选框的状态和头部复选框状态保持一致.
技术分析:
jQuery
单击事件: click
获取checked属性的值
获取其他复选框并设置值
步骤分析:
//1.给头部复选框添加点击事件
//2.获取头部复选框的状态
//3.获取其他复选框,并设置状态
案例3-QQ表情添加