1.初识jQuery
jQuery概述:
jQuery是一个轻量级的库,拥有强大的选择器,出色的Dom操作,可靠的事件处理,完善的兼容性和链式操作等功能;jQuery凭借简洁的语法和跨平台的兼容性,极大的简化了javaScript开发人员遍历HTML文档,操作Dom,处理事件,执行动画和开发Ajax的操作。
jQuery环境配置:
jQuery不需要安装,把下载的jQuery.js放到网站的公共位置,想要在某个网页上使用jQuery时,只需要在相关的HTML文档中引入该库文件的位置即可。
页面中引入jQuery:
在<head>标签内使用<script>标签:<script src="../jQuery.js" type="text/javascript"></script>
简单的jQuery代码知识:
在jQuery库中,$是jQuery的简写形式
$(document).ready();//这段代码类似于javaScript中的window.onload方法
jQuery对象和Dom对象:
两种对象无法使用对方的方法;
jQuery对象转换为Dom对象:方法1:var $jq = $("div"); var js = $jq[0];
方法2:var $jq = $("id"); var js = $jq.get(0);
Dom对象转换为jQuery对象:var js = document.getElementById("s"); var $jq = $(js);
2.jQuery选择器
选择器是jQuery的基础,在jQuery中,对事件处理,遍历DOM和Ajax操作都依赖于选择器。
jQuery选择器分为:基本选择器,层次选择器,过滤选择器,表单选择器。
1.基本选择器:
语法:$("#id");//选取id为id的元素,返回单个元素
$(".class");//选取所有class为class的元素,返回集合元素
$("element");//选取所有的标签为element的元素,返回集合元素
$("*");//选取所有元素,返回集合元素
$("div,.class,#id");//选取所有标签为div,和class为class,id为id的一组元素,返回集合元素。
2.层次选择器:
语法:$("div span");//后代选择器,选择div标签的所有标签为span的后代元素
$("div>span");//子选择器,选择div标签的所有标签为span的子元素
$("div+span");//相邻兄弟选择器,选择紧跟在div标签后的下一个span标签
$("div+span") ===$("div").next("span");
$("div~span");//一般兄弟选择器,选择div标签后面的所有同辈的span标签
$("div~span") ===$("div").nextAll("span");
$("div").siblings("span")//选取div标签所有的同辈span标签元素,无论位置前后。
3.过滤选择器:
基本过滤选择器:
语法:$(":first");//选取第一个元素 $(":last");//选取最后一个元素
$(":not(.class)");//选择所有不匹配not()中的元素,可以换成id,class,element
$(":even");//选取所有索引是偶数的元素 $(":odd");//选取所有索引是奇数的元素
$(":eq(index)");//选取所有索引是index的元素
$(":gt(index)");//选取所有索引大于index的元素
$(":lt(index)");//选取所有索引小于index的元素
$(":header");//选取所有的标题元素 $(":animated");//选取所有正在执行动画的元素
$(":focus");//选取当前获取焦点的元素。
内容过滤选择器:
语法:$(":contains(text)");//选取含有文本为text的元素
$(":empty");//选取所有不包含子元素(文本元素)的空元素
$("div:has(p)");//选取含有p元素的div元素
$(":parent");//选取所有含有子元素(文本元素)的元素
可见性过滤选择器:
语法:$(":hidden");//选取所有不可见的元素 $(":visible");//选取所有可见的元素
属性过滤选择器:
语法:$("[id]");//选取拥有属性id的元素
$("[id=value]");//选取属性id的值为value的元素
$("[id!=value]");//选取属性id的值不等于value的元素
$("[id^=value]");//选取属性id的值以value开始的元素
$("[id$=value]");//选取属性id的值以value结束的元素
$("[id*=value]");//选取属性id的值中包含value的元素
$("[id|=value]");//选取属性id的值等于value,或者以value为前缀(前缀与后半部分以"_"连接)的元素
$("[id~=value]");//选取属性id用空格分割的值中包含value的元素
复合属性选择器:以上选择器可以一起使用,满足多个条件
子元素过滤选择器:
语法:$(":nth-child(index)");//选取每个父元素下的第index个子元素
$(":nth-child(even/odd)");//选取每个父元素下的所有索引为偶数/奇数的子元素
$(":first-child");//选取每个父元素的第一个子元素
$(":last-child");//选取每个父元素的最后一个子元素
$(":only-child");//如果这个父元素下只有惟一一个子元素,则选取这个子元素
表单对象属性过滤选择器:
语法:$(":enabled");//选取所有的可用元素
$(":disabled");//选取所有的不可用元素
$(":checked");//选取所有的被选中的元素(单选框,复选框)
$(":selected");//选取所有的被选中的选项元素(下拉列表框)
4.表单选择器:
语法:$(":input");//选取所有的<input>,<textarea>,<select>,<button>元素
$(":text");//选取所有的单行文本框
$(":radio");//选取所有的单选框
$(":password");//选取所有的密码框
$(":checkbox");//选取所有的多选框
$(":submit");//选取所有的提交按钮
$(":image");//选取所有的图像按钮
$(":reset");//选取所有的重置按钮
$(":button");//选取所有的按钮
$(":file");//选取所有的上传域
$(":hidden");//选取所有的不可见元素
5.选择器的一些注意事项:
根据W3C标准,属性值中是不能含有“.”,",","(",")"等特殊符号的,但在实际项目中可能会遇到表达式中含有这种特殊符号,解决此类错误的方法是使用转义符转义;例如:$("#i#d")=>$("#i\\#d");