jQuery简介
jQuery的用法、优势、配置环境
jQuery 是一个 JavaScript 库。jQuery 极大地简化了 JavaScript 编程。jQuery能做的JavaScript也都能做,但使用jQuery能大幅提高开发效率。
优势:
- 体积小,压缩后只有100KB左右
- 强大的选择器
- 出色的DOM封装
- 可靠的事件处理机制
- 出色的浏览器兼容性
- 使用隐式迭代简化编程
- 丰富的插件支持
jQuery 库可以通过一行简单的标记被添加到网页中。下载文件到本地然后引用(也可以把下面CDN的网址打开,直接复制粘贴为js文件使用):
1 | <head> |
如果您不希望下载并存放 jQuery,那么也可以通过 CDN(内容分发网络) 引用它。
谷歌和微软的服务器都存有 jQuery 。
如需从谷歌或微软引用 jQuery,请使用以下代码之一:
1 | <head> |
jQuery语法
使用jQuery弹出提示框
1 | <script> |
$(document).ready()与window.onload类似,但也有区别
jQuery语法结构
1 | $(selector).action() ; |
- 工厂函数$():将DOM对象转化为jQuery对象
- 选择器 selector:获取需要操作的DOM 元素
- 方法action():jQuery中提供的方法,其中包括绑定事件处理的方法
jQuery操作页面元素
- 使用addClass( )方法为元素添加样式
- 使用css( )方法设置元素样式
- 使用show( )、hide( ) 方法设置元素的显示和隐藏
1
2
3
4
5
6jQuery 对象.addClass([样式名]);
css("属性","属性值") ;
css({"属性1":"属性值1","属性2":"属性值2"...}) ;
$(selector).show();
$(selector).hide();
1 | <!doctype html> |
“$”等同于“ jQuery ”
1 | $(document).ready()=jQuery(document).ready() |
链式操作(对一个对象进行多重操作,并将操作结果返回给该对象)
对于设置性操作会把当前的jQ对象进行返回,所以可以在后面继续链式编程
对于获取性操作来说,返回的是具体的值(不是jQ对象),所有不可以继续链式编程了
隐式迭代(jQuery在设置属性时会自动的遍历,因此我们不需要再遍历)
对于设置性操作来说,会把获取到的所有元素都设置上相同的操作。
对于获取性操作来说,只会获取到第一个元素对应的值。
如要每个元素都设置上不同的操作,自己手动遍历。
1 | $(document).ready(function() { |
DOM对象和jQuery对象
DOM对象
浏览器把HTML文档的元素转换成节点对象,所有节点组成了一个树状结构
jQuery对象
DOM对象:直接使用JavaScript获取的节点对象
1 | var objDOM=document.getElementById("title"); |
jQuery对象:使用jQuery包装DOM对象后产生的对象,它能够使用jQuery中的方法
1 | $(“#title”).html( ); 等同于 document.getElementById("title").innerHTML; |
DOM对象和jQuery对象分别拥有一套独立的方法,不能混用
jQuery对象与DOM对象的相互转换
DOM对象转jQuery对象
使用$()函数进行转化:$(DOM对象)
1 | var txtName =document.getElementById("txtName"); |
jQuery对象转DOM对象
jQuery对象是一个类似数组的对象,
可以通过[index]的方法得到相应的DOM对象
1 | var $txtName =$ ("#txtName"); |
通过get(index)方法得到相应的DOM对象
1 | var $txtName =$("#txtName"); |
jQuery选择器
jQuery选择器类似于CSS选择器,用来选取网页中的元素
1 | $("h3").css("background","#09F"); |
jQuery选择器功能强大,种类也很多,分类如下
通过CSS选择器选取元素
基本选择器
层次选择器
属性选择器
通过过滤选择器选择元素
基本过滤选择器
可见性过滤选择器
基本选择器
基本选择器包括标签选择器、类选择器、ID选择器、并集选择器和全局选择器
层次选择器
层次选择器通过DOM 元素之间的层次关系来获取元素
后代选择器
后代选择器用来获取元素的后代元素
1 | $(".textRight p").css("color","red"); |
子选择器
子选择器用来获取元素的子元素
1 | $(".textRight>p").css("color","red"); |
相邻选择器
相邻选择器用来选取紧邻目标元素的下一个元素
1 | $("h1+p").css(text-decoration","underline"); |
同辈选择器
同辈选择器用来选取目标元素之后的所有同辈元素
1 | $("h1~p").css("text-decoration","underline"); |
属性选择器
属性选择器通过HTML元素的属性来选择元素
1 | a标签带有class属性 |
过滤选择器
通过特定的过滤规则来筛选出所需的元素
主要分类:
- 基本过滤选择器
- 可见性过滤选择器
- 表单对象过滤选择器
- 内容过滤选择器、子元素过滤选择器……
基本过滤选择器
可见性过滤选择器
1 | $("p:hidden").show(); |
jQuery选择器的注意事项
特殊符号的转义
1 | <div id="id#a">aa</div> |
选择器中的空格(选择器的书写规范很严格,多一个空格或少一个空格,都会影响选择器的效果)
1 | var $t_a = $(".test :hidden"); //带空格的jQuery选择器 |