jQuery参考文档
jQuery函数: $/jQuery
jQuery对象
包含所有匹配的n个DOM元素的伪数组对象
执行$()返回的就是jQuery对象
基本行为:
length/size(): 得到dom元素的个数
each(function(index, domEle){}): 遍历所有dom元素
index(): 得到当前dom元素在所有兄弟中的下标
操作标签的属性, 标签体文本
attr(name) / attr(name, value): 读写非布尔值的标签属性
prop(name) / prop(name, value): 读写布尔值的标签属性
removeAttr(name)/removeProp(name): 删除属性
addClass(classValue): 添加class
removeClass(classValue): 移除指定class
val() / val(value): 读写标签的value
html() / html(htmlString): 读写标签体文本
style样式
位置坐标
尺寸
官方网站:http://jquery.com/
中文版:http://www.jquery123.com/
a.引入本地的Jquery的文件
b.其他cdn(内容分发网络)
https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js
https://www.bootcdn.cn/jquery/ 引入各个版本
是 j Q u e r y 别 名 。 如 是jQuery别名。如 是jQuery别名。如()也可jQuery()这样写,相当于页面初始化函数,当页面加载完毕,会执行jQuery()。
jquery类库下面方法的分类
工具方法:前面带有$.组成的,原生js对象和jquery对象都可以使用。
实例方法:必须给jquery对象使用
window.οnlοad=function(){}:页面加载完成(页面的结构和内容)执行函数
$(document).ready(function(){}):页面加载完成(页面的结构,不包括内容)执行函数。
区别:
$(document).ready(function(){}),不包括内容速度更快
$(document).ready(function(){})页面中可以放多个,顺序执行,window.οnlοad=function(){}只能一个,多个后面覆盖前面的
$(document).ready(function(){})有简写风格 ----> $(function(){})
jq转原生–通过索引或者get方法
原生转jq–用$()包起来,变成jq对象
方法间能够形成链式操作,基于每一个方法返回当前的操作的jquery对象(return this)
jQuery可以通过jquery.cookie.js插件来操作cookie
使用 jquery.cookie.js 之前需要先引入 jQuery:
<script src="/path/to/jquery.min.js"></script>
<script src="/path/to/jquery.cookie.js"></script>
我们可以使用第三方资源库引入这两个文件:
<script src="https://cdn.staticfile.org/jquery/3.4.0/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
$.cookie.raw = true;
$.cookie.json = true;
expires
expires: 365
定义 cookie 的有效时间,值可以是一个数字(从创建 cookie 时算起,以天为单位)或一个 Date 对象。如果省略,那么创建的 cookie 是会话 cookie,将在用户退出浏览器时被删除。
path
path: ‘/’
默认情况:只有设置 cookie 的网页才能读取该 cookie。
定义 cookie 的有效路径。默认情况下, 该参数的值为创建 cookie 的网页所在路径(标准浏览器的行为)。
如果你想在整个网站中访问这个 cookie 需要这样设置有效路径:path: ‘/’。如果你想删除一个定义了有效路径的 cookie,你需要在调用函数时包含这个路径:
$.cookie('the_cookie', null,{ path: '/' });
5.domain
domain: ‘example.com’
默认值:创建 cookie 的网页所拥有的域名。
$.cookie('name', 'value');
如果未指定过期时间,则会在关闭浏览器或过期。
$.cookie('name', 'value', { expires: 7 });
$.cookie('name', 'value', { expires: 7, path: '/' });
注:在默认情况下,只有设置 cookie 的网页才能读取该 cookie。如果想让一个页面读取另一个页面设 置的cookie,必须设置 cookie 的路径。cookie 的路径用于设置能够读取 cookie 的顶级目录。将这 个路径设置为网站的根目录,可以让所有网页都能互相读取 cookie (一般不要这样设置,防止出现冲突)。
$.cookie('name'); // => "value"
$.cookie('nothing'); // => undefined
$.cookie(); // => { "name": "value" }
// cookie 删除成功返回 true,否则返回 false
$.removeCookie('name'); // => true
$.removeCookie('nothing'); // => false
// 写入使用了 path时,读取也需要使用相同的属性 (path, domain)
$.cookie('name', 'value', { path: '/' });
// 以下代码【删除失败】
$.removeCookie('name'); // => false
// 以下代码【删除成功】
$.removeCookie('name', { path: '/' }); // => true
注意:删除 cookie 时,必须传递用于设置 cookie 的完全相同的路径,域及安全选项。
$(document).ready(function(){
$.cookie('name', 'runoob'); // 创建 cookie
name = $.cookie('name'); // 读取 cookie
$("#test").text(name);
$.cookie('name2', 'runoob2', { expires: 7, path: '/' });
name2 = $.cookie('name2');
$("#test2").text(name2);
});
官方文档
这里参考了yusirxiaer的csdn的博客
lazyload依赖与jquery。所以先引入jquery和lazyload
<script src="jquery.js"></script>
<script src="jquery.lazyload.js"></script>
1.将图片路径写入data-original属性
2.给lazyload的图片增加一个名为lazy的class
3.选择所有要lazyload的图片(img.lazy),执行lazyload();
<img class="lazy" data-original="img/example.jpg" style="margin-top:1000px" height="200">
<script>
$(function(){
$("img.lazy").lazyload();
})
</script>
注意:必须设置图片的高度或者宽度,否则插件可能无法正常工作
lazyload默认是当滚动到该图片位置时,加载该图片。但是可以通过设置Threshold参数来实现滚到距离其xx px时就加载。
$(function(){
$("img.lazy").lazyload({
threshold :20
});
})
上面的例子设置了滚动到距离图片20px时,图片就开始再开始加载
当触发定义的事件时,图片才开始加载
$(function(){
$("img.lazy").lazyload({
event : "click"
});
})
上面的例子使图片点击后,才开始加载
Tip:你可以使用这个来实现图片的延迟加载
$(function() {
$("img.lazy").lazyload({
event : "sporty"
});
});
$(window).bind("load", function() {
var timeout = setTimeout(function() {
$("img.lazy").trigger("sporty")
}, 5000);
});
上面的代码在页面加载完毕后五秒才开始加载图片
插件默认的加载效果是 show() ,你可以使用任何你想要的效果。下面的代码使用了 fadeIn()
$("img.lazy").lazyload({
effect : "fadeIn"
});
插件也可以使用在滚动容器内的图片上。下面的div拥有scrollerbar,内容的内容进行滚动,滚到图片位置时,图片开始加载
<div style="height:600px;overflow:scroll" id="container">
<img class="lazy" data-original="img/example.jpg" alt="" style="margin-top:1000px" height="200">
</div>
<script>
$(function(){
$("img.lazy").lazyload({
container: $("#container")
});
})
</script>
插件会执行一个寻找未加载图片的循坏,该循环会检查图片是否可见,默认情况下,当第一个视图外的图片被找到,循环就会停止 。
但是存在一种情况:页面布局图片的顺序和html图片代码的顺序不一致;它会导致本该加载的没有加载。这种情况下就可以将 failurelimit 设为 10 ,它令插件找到 10 个不在可见区域的图片是才停止搜索. 如果你有一个恶心的布局, 请把这个参数设高一点。
代码:
$("img.lazy").lazyload({
failure_limit : 10
});
为了提升性能,插件默认忽略隐藏的图片;如果想要加载隐藏图片.设置skip_invisible为false;
注意:Webkit浏览器将自动把没有宽度和高度的图像视为不可见
$("img.lazy").lazyload({
skip_invisible : true
});
引入相关资源
<script type="text/javascript" src="//code.jquery.com/jquery-1.8.2.min.js" ></script>
<script type="text/javascript" src="jquery.pagination.min.js"></script>
步骤二:页面添加一个元素显示分页
<div id="pagination" class="l-page"></div>
步骤三:异步请求数据,并将请求到的数据进行分页处理
绑定分页参数说明:
currentPage: 当前页码,默认值1
totalPage: 总共有多少页,72条数据每页显示10条则共8页
isShow: 是否显示首页、尾页 true:显示 false:不显示,默认值true
count: 分页条显示可见页码数量 ,默认值5
homePageText: 第一页显示文字,默认值“首页”
endPageText: 最后一页显示文字,默认值“尾页”
prevPageText: 上一页显示文字,默认值“上一页”
nextPageText: 下一页显示文字,默认值“下一页”
callback: 点击翻页绑定事件
实际开发中currentPage、totalPage必传,其他视情况而定
jQuery.validate是由jQuery团队、 jQuery UI团队的主要开发人员Jörn Zaefferer 编写和维护的一套表单验证插件,为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。是目前最前最强大的表单验证插件之一。
使用方法
1、jQuery.validate.js依赖jQuery或者zepto.js。
引入脚本
<script type="text/javascript" src="js/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<script type="text/javascript" src="js/jquery.metadata.js"></script>
<script type="text/javascript" src="js/messages_zh.js"></script>
validate-methods.js 为扩展的验证规则
<script type="text/javascript">
//表单验证-用户名
$(function() {
$('#form1').validate({
rules: {
username: {
required: true,
minlength: 2,
maxlength: 20,
remote: { //将username的值传给后端,后端返回的结果一定是true或者false的字符串。
type: 'post',
url: 'reg.php'
}
},
password: {
required: true,
minlength: 6
},
repass: {
required: true,
equalTo: '#password'
},
email: {
required: true,
email: true
}
},
messages: {
username: {
required: '用户名不能为空',
minlength: '用户名不能小于2',
maxlength: '用户名不能大于10',
remote: '用户名已存在'
},
password: {
required: '密码不能为空',
minlength: '密码不能小于6位'
},
repass: {
required: '密码重复不能为空',
equalTo: '密码不匹配'
},
email: {
required: '电子邮箱不能为空',
email: '你输入的格式有误'
}
}
});
});
$.validator.setDefaults({
//添加校验成功后的执行函数--修改提示内容,并为正确提示信息添加新的样式(默认是valid)
success: function(label) {
label.text('√').css('color', 'green').addClass('valid');
//label.append('');
}
});
</script>
其他参数参考