jQuery简介
jQuery由美国人John Resig于2006年创建
jQuery是目前流行的JavaScript程序库,它是对JavaScript对象和函数的封装
它的设计思想是write less,do more(写的更少,做的更多)
jQuery能做什么
访问和操作DOM元素
控制页面样式
对页面事件进行处理
扩展新的jQuery插件
与Ajax技术完美结合
jQuery的优势
体积小,压缩后只有100KB左右
强大的选择器
出色的DOM封装
可靠的事件处理机制
出色的浏览器兼容性
使用隐式迭代简化编程
丰富的插件支持
获取jQuery
进入jQuery官网:
http://jquery.com
jQuery库文件
jQuery库分开发版和发布版
名称 大小 说明
jquery-3.版本号.js(开发版) 约286KB 完整无压缩版本,主要用于测试、学习和开发
jquery-3.版本号.min.js(发布版) 约94.8KB 经过工具压缩或经过服务器开启Gzip压缩,主要应用于发布的产品和项目
在页面中引入jQuery
<script src="js/jquery-3.3.1.min.js" type="text/javascript"></script>
jQuery基本语法
使用jQuery弹出提示框
为页面加载事件绑定方法
<script>
$(document).ready(function() {
//document是一个选择器 全责全部文档
//ready是一个方法
alert("我是云南的!");
});
</script>
这个也有优化简写方法,如图:
$(document).ready()
$(document).ready()与window.onload类似,但也有区别
jQuery选择器
jQuery 语法
jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作
基础语法是:$(selector).action()
jQuery基本选择器
基本选择器包括标签选择器、类选择器、ID选择器、并集选择器和全局选择器
$("h1")会选取到所有的h1标签
使用css表示样式,相当于给元素添加行内样式,第一个参数表示属性,第二个表示值
.class 类选择器
#id ID选择器只匹配第一个ID,就算多个ID,也只匹配第一个
并集选择器 就是可以把多个合并调用,注意写的不规范,例如多个ID,他也会加上样式
全局选择器* 他会给所有的标签都加上样式
jQuery
层次选择器
层次选择器通过DOM 元素之间的层次关系来获取元素
后代选择器:
$("ul li")
只有是后代都会被选中,哪怕他套多个ul ol,其中的li作为后代,无论是子级还是孙级都会被选中
子选择器:
$("ul>li")
只有他的直系儿子可以被选中,孙子其他的都不能被选中
相邻元素选择器:
$(".a+li")
第一个代表选取的当前的元素,他之后的第一个元素
同辈元素选择器:
$(".a~li")
表示除了.a以外所有的同辈元素都会被选中
jQuery属性选择器
属性选择器通过HTML元素的属性来选择元素
根据属性名获取元素
属性选择器可以根据是否包含某属性来选取元素
a标签带有class属性
$("#id a[class]").css("background","red");
根据属性值获取元素
属性选择器可以根据属性的值来选取元素
class属性值为abc
$("#id a[class='abc']").css("background","red");
根据属性值获取元素
属性选择器可以指定选取不等于属性是某个特定值的元素
$("#id a[class!=abc]").css("background","red");
class值不等于abc
根据属性值包含特定的值获取元素
属性选择器可以指定属性值以指定值开头的元素
a标签href属性值以www开头
$("#id a[href^='www']").css("background","red");
根据属性值包含特定的值获取元素
属性选择器可以指定属性值以指定值结尾的元素
a标签href属性值以html结尾
$("#id a[href$='html']").css("background","red");
根据属性值包含特定的值获取元素
属性选择器可以指定属性值包含指定值的元素
a标签href属性值包含“abc”的元素
$("#id a[href*='abc']").css("background","red")
过滤选择器
通过特定的过滤规则来筛选出所需的元素
主要分类
基本过滤选择器
可见性过滤选择器
表单对象过滤选择器
内容过滤选择器、子元素过滤选择器……
基本过滤选择器
选取第一个选择器
选取最后一个选择器
选取去除不是你所写的以外的同属性元素
选取下标是偶数的元素
选取下标是奇数的元素
选取括号里下标的元素
选取大于括号里下标的元素
选取小于括号里下标的元素
选取所有标题元素(h1-h6)
选取获取焦点的元素(表单),必须获得焦点才能选取
选择所有动画
<script>
$(document).ready(function(){
function aniDiv(){
$("div:eq(0)").animate({width:"50%"},"slow");
$("div:eq(0)").animate({width:"100%"},"slow",aniDiv);
}
aniDiv();
$(".btn1").click(function(){
$(":animated").css("background-color","red");
});
});
</script>
</head>
<body>
<button class="btn1">修改动画元素颜色</button>
<div style="background:blue;">Div 1</div>
<div style="background:green;">Div 2</div>
<div style="background:yellow;">Div 3</div>
练习1:
使用基本过滤选择器,实现隔行变色的表格(不包括表头),偶数行背景色为red,奇数行背景色为blue
可见性过滤选择器
通过元素显示状态来选取元素
选取所有隐藏元素,,显示出来
$("p:hidden").show();
选取所有可见元素,隐藏起来
$("p:visible").hide();
jQuery选择器注意事项
特殊符号的转义
<div id="id#a">aa</div>
<div id="id[2]">cc</div>
获取这两个元素的选择器,利用\\来转义
jQuery选择器注意事项
选择器中的空格
选择器的书写规范很严格,多一个空格或少一个空格,都会影响选择器的效果