一.jQuery遍历
1.原始方式遍历
for ( var i= 0 ; i< 元素数组. length; i++ ) {
元素数组[ i] ;
}
2. jQuery对象方法遍历
jquery对象. each ( function ( index, element) { } ) ;
其中: ( 参数名字随便取的)
index: 就是元素在集合中的索引
element:就是集合中的每一个元素对象
3. jquery的全局方法遍历
$. each ( jquery对象, function ( index, element) { } ) ;
其中,
index: 就是元素在集合中的索引
element:就是集合中的每一个元素对象
4. jQuery3.0新特性for of语句遍历
for ( 变量 of jquery对象) {
变量;
}
其中,
变量: 定义变量依次接受jquery数组中的每一个元素
jquery对象:要被遍历的jquery对象
二.使用JQ操作DOM
1.jQuery对DOM树中的文本(标签内容)和值进行操作
API方法 解释 val([value]) 获得/设置标签里面value属性相应的值 text([value]) 获得/设置元素的文本内容 html([value]) 获得/设置元素的标签体内容
val ( ) 获得标签里面value属性的值 value属性的封装
val ( "..." ) 给标签value属性设置值
html ( ) 获得标签的内容,如果有标签,一并获得。
html ( "... . ) 设置html代码,如果有标签,将进行解析。支持标签 封装了innerHTML
text ( ) 获得标签的内容,如果有标签,忽略标签。
text ( "..." ") 设置文本,如果含有标签,把标签当做字符串. 不支持标签
2.jQuery创建,插入
API方法 解释 $(“A”) 创建A元素对象 append(element) 添加成最后一个子元素,两者之间是父子关系 prepend(element) 添加成第一个子元素,两者之间是父子关系 appendTo(element) 添加到父元素的内部最后面 prependTo(element) 添加到父元素的内部最前面 before(element) 添加到当前元素的前面,两者之间是兄弟关系 after(element) 添加到当前元素的后面,两者之间是兄弟关系
append a. append ( c) , 将c插入到a的内部的后面; 添加最小的孩子 ( eg: 唐僧收沙悟净)
< a>
...
< c> < / c>
< / a>
prepend a. prepend ( c) , 将c插入到a的内部的前面; 添加最大的孩子 ( eg: 唐僧收孙悟空)
< a>
< c> < / c>
...
< / a>
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -
appendTo a. appendTo ( c) , 将a插入到c的内部的后面; 最小的孩子认干爹 ( eg: 沙悟净拜师)
< c>
...
< a> < / a>
< / c>
prependTo a. prependTo ( c) , 将a插入到c的内部的前面 ; 最大的孩子认干爹 ( eg: 孙悟空拜师)
< c>
< a> < / a>
...
< / c>
after a. after ( c) ; 哥哥找弟弟 ( eg: 八戒找沙师弟)
< a> < / a> < c> < / c>
before a. before ( c) ; 弟弟找哥哥 ( eg: 八戒找孙悟空)
< c> < / c> < a> < / a>
3.jQuery移除节点(对象)
API方法 解释 remove() 删除指定元素(自己移除自己) empty() 清空指定元素的所有子元素
三.jQuery插件
1.什么是jq插件
插件就是以jquery为基础进行扩展具有特定功能的代码,就是jquery插件。例如:图片轮播、选项卡等。
http://www.jq22.com 插件网站
2.jQuery的插件机制
jQuery插件的机制说白了就是插件实现原理.
其实就是利用jQuery提供的$.fn.extend() 和$.extend() 方法,扩展jQuery的功能。
3. jQuery插件机制语法
语法 解释 方法例子 $.fn.extend(object) 对jQuery对象进行方法扩展 jq对象.each(); $.extend(object) 对jQuery全局进行方法扩展 $.each();
4.自定义jq插件
< ! DOCTYPE html>
< html>
< head>
< meta charset= "UTF-8" >
< title> 01 - jQuery对象进行方法扩展< / title>
< script src= "../js/jquery-3.3.1.js" type= "text/javascript" charset= "utf-8" > < / script>
< script type= "text/javascript" >
$ ( function ( ) {
$. fn. extend ( {
check: function ( ) {
this . prop ( "checked" , true ) ;
} ,
uncheck: function ( ) {
this . prop ( "checked" , false ) ;
}
} ) ;
} ) ;
function checkFn ( ) {
$ ( "input:checkbox" ) . check ( ) ;
}
function uncheckFn ( ) {
$ ( "input:checkbox" ) . uncheck ( ) ;
}
< / script>
< / head>
< body>
< input id= "btn-check" type= "button" value= "点击选中复选框" onclick= "checkFn()" >
< input id= "btn-uncheck" type= "button" value= "点击取消复选框选中" onclick= "uncheckFn()" >
< br/ >
< input type= "checkbox" value= "football" > 足球
< input type= "checkbox" value= "basketball" > 篮球
< input type= "checkbox" value= "volleyball" > 排球
< / body>
< / html>
< script type= "text/javascript" >
$. extend ( {
min: function ( a, b) {
return a < b ? a : b;
} ,
max: function ( a, b) {
return a > b ? a : b;
}
} ) ;
alert ( $. max ( 3 , 5 ) ) ;
< / script>
五.表单校验插件validation
1.validation概述
网络上有许多成熟的插件共使用者参考,插件就是将jquery实现的常用操作进行封装,封装后的“小框架“就可以叫做插件,按照插件的语法去操作可以实现很多复杂的功能,而我们需要做的是学会该插件的使用语法即可。表单校验插件是按照一定的语法编写代码,可以使用简单的代码完成复杂的表单校验工作
validation是进行数据校验的插件, 通常用在表单上面,内部就封装了正则表达式
2.validation下载
官网地址:http://jqueryvalidation.org/files/jquery-validation-1.15.0.zip
帮助文档位置:http://jqueryvalidation.org/documentation/
3.validation使用步骤
将该插件(也就是一个js文件)导入到我们的工程中 在要使用校验插件的html中引入该js文件【先导入jq】
<!--依赖的jQuery库-->
<script src="../js/jquery-1.8.3.js" type="text/javascript" charset="utf-8" />
<!--validation校验库-->
<script src="../js/jquery.validate.js" type="text/javascript" charset="utf-8" />
< script type= "text/javascript" >
$ ( function ( ) {
$ ( "#formId" ) . validate (
{
key: value
}
) ;
} ) ;
< / script>
4. 检验方式:js 代码方式
语法:
$ ( …) . validate ( {
rules: { } ,
messages: { }
} ) ;
rules 规则语法:
rules: {
字段名 ( 标签的name的属性值) : 校验器,
字段名 ( 标签的name的属性值) : 校验器
}
校验器语法:
语法:{ 校验器: 值, 校验器: 值, ... }
message 提示语法:
messages: {
字段名: { 校验器: "提示" , 校验器: "提示" , ... }
}
序号 规则 描述 1 required:true 必须输入的字段。 2 remote:“check.php” 使用 ajax 方法调用 check.php 验证输入值。 3 email:true 必须输入正确格式的电子邮件。 4 url:true 必须输入正确格式的网址。 5 date:true 必须输入正确格式的日期。日期校验 ie6 出错,慎用。 6 dateISO:true 必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22。只验证格式,不验证有效性。 7 number:true 必须输入合法的数字(负数,小数)。 8 digits:true 必须输入整数。 9 creditcard: 必须输入合法的信用卡号。 10 equalTo:"#id名" 输入值必须和 #id对应的标签对象的值 相同。 11 accept: 输入拥有合法后缀名的字符串(上传文件的后缀)。 12 maxlength:5 输入长度最多是 5 的字符串(汉字算一个字符)。 13 minlength:10 输入长度最小是 10 的字符串(汉字算一个字符)。 14 rangelength:[5,10] 输入长度必须介于 5 和 10 之间的字符串(汉字算一个字符)。 15 range:[5,10] 输入值必须介于 5 和 10 之间。 16 max:5 输入值不能大于 5。 17 min:10 输入值不能小于 10。