jquery介绍
jQuery是目前使用最广泛的javascript函数库。据统计,全世界排名前100万的网站,有46%使用jQuery,远远超过其他库。微软公司甚至把jQuery作为他们的官方库。
jQuery的版本分为1.x系列和2.x、3.x系列,1.x系列兼容低版本的浏览器,2.x、3.x系列放弃支持低版本浏览器,目前使用最多的是1.x系列的。
jquery是一个函数库,一个js文件,页面用script标签引入这个js文件就可以使用。
<script type="text/javascript" src="js/jquery-1.12.2.js"></script>
jquery的口号和愿望 Write Less, Do More(写得少,做得多)
1、http://jquery.com/ 官方网站
2、https://code.jquery.com/ 版本下载
jquery的特点:
1.jQuery 是一个 JavaScript 库。 2.jQuery 极大地简化了 JavaScript 编程。 3.jQuery 很容易学习。
查找元素
1.选择器
基本选择器
$("div").css("color","red")
$("*").css("color","red")
$("#p1").css("color","red") $(".outer").css("color","red") $(".inner,p,div").css("color","red") 层级选择器 $(".outer p").css("color","red")
$(".outer>p").css("color","red")
$(".outer+p").css("color","red")
$(".outer~p").css("color","red") 基本筛选器 $("li:first").css("color","red")
$("li:eq(0)").css("color","red") //序号
$("li:gt(2)").css("color","red") //大于
$("li:even").css("color","red") //偶数
$("li:lt(2)").css("color","red") //小于 属性选择器
$("[alex='sb'][id='p1']").css("color","red") 表单选择器
$("[type='text']").css("width","200px")
$(":text").css("width","400px")
2.筛选器
筛选器
$("li").eq(2).css("color","red");
$("li").first().css("color","red");
$("li").last().css("color","red"); 查找筛选器 $(".outer").children("p").css("color","red");
$(".outer").find("p").css("color","red"); $("li").eq(2).next().css("color","red");
$("li").eq(2).nextAll().css("color","red");
$("li").eq(2).nextUntil("#end").css("color","red"); $("li").eq(4).prev().css("color","red");
$("li").eq(4).prevAll().css("color","red");
$("li").eq(4).prevUntil("li:eq(0)").css("color","red"); console.log($(".outer .inner p").parent().html())
$(".outer .inner p").parents().css("color","red");
$(".outer .inner p").parentsUntil("body").css("color","red");
实例:模态对话框
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.content{
height: 1800px;
}
.shade{
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: gray;
opacity: 0.5;
}
.model{
width: 200px;
height: 200px;
background-color: bisque;
position: absolute;
top: 50%;
left: 50%;
margin-top: -100px;
margin-left: -100px;
}
.hide{
display: none;
}
</style>
</head>
<body>
<div class="content">
<button onclick="show(this)">show</button>kjdksnakdnaskldsdkldladksladdkaldadkal
</div>
<div class="shade hide"></div>
<div class="model hide">
<button onclick="cancel(this)">cancel</button>
</div>
<script src="js/jquery-3.1.1.js"></script>
<script>
function show(self) {
$(self).parent().siblings().removeClass('hide');
}
function cancel(self) {
// $(self).parent().addClass('hide');
// $(self).parent().prev().addClass('hide');
// $(self).parent().parent().children('.model,.shade').addClass('hide');
$(self).parent().prev().addClass('hide').next().addClass('hide');
} </script>
</body>
</html>
实例:层次菜单
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/jquery-3.1.1.js"></script>
<style>
.outer{
height: 1000px;
width: 100%;
}
.menu{
float: left;
background-color: #a47e3c;
width: 30%;
height: 500px;
}
.content div{
float: left;
height: 500px;
background-color: #0077cc;
width: 70%;
display: none;
}
.item .title{
background-color: #4cae4c;
line-height: 40px;
}
.hide{
display: none;
}
.content .active{
display: block;
}
</style>
</head>
<body>
<div class="outer">
<div class="menu">
<div class="item">
<div class="title" onclick="show(this)">菜单一</div>
<div class="con current">
<div>111</div>
<div>111</div>
<div>111</div>
</div>
</div>
<div class="item">
<div class="title" onclick="show(this)">菜单二</div>
<div class="con next hide">
<div>222</div>
<div>222</div>
<div>222</div>
</div>
</div>
<div class="item">
<div class="title" onclick="show(this)">菜单三</div>
<div class="con next1 hide">
<div>333</div>
<div>333</div>
<div>333</div>
</div>
</div>
</div>
<div class="content" id="contents">
<div class="active">tab文字内容一</div>
<div>tab文字内容二</div>
<div>tab文字内容三</div>
<div>tab文字内容四</div>
<div>tab文字内容五</div>
<div>tab文字内容六</div>
<div>tab文字内容七</div>
<div>tab文字内容八</div>
<div>tab文字内容九</div>
</div> <script>
function show(self) {
$(self).next().slideDown().parent().siblings().children('.con').slideUp();
// $(self).next().removeClass('hide');
// $(self).parent().siblings().children('.con').addClass('hide');
// $('#contents div').eq($(self).parent().index()).addClass('active').siblings().removeClass('active');
}
$('.item .current div').click(function () {
$('#contents div').eq($(this).index()).addClass('active').siblings().removeClass('active');
}); $('.item .next div').click(function () {
$('#contents div').eq($(this).index()+3).addClass('active').siblings().removeClass('active');
}); $('.item .next1 div').click(function () {
$('#contents div').eq($(this).index()+6).addClass('active').siblings().removeClass('active');
}); // function show1(self) {
// $(self).next().removeClass('hide');
// $(self).parent().siblings().children('.con').addClass('hide');
// $('#contents div').eq($(self).parent().index()+3).addClass('active').siblings().removeClass('active');
// }
// function show2(self) {
// $(self).next().removeClass('hide');
// $(self).parent().siblings().children('.con').addClass('hide');
// $('#contents div').eq($(self).parent().index()+6).addClass('active').siblings().removeClass('active');
// }
</script>
</div>
</body>
</html>
操作元素
1.属性操作
--------------------------属性
$("").attr();
$("").removeAttr();
$("").prop();
$("").removeProp();
--------------------------CSS类
$("").addClass(class|fn)
$("").removeClass([class|fn])
--------------------------HTML代码/文本/值
$("").html([val|fn])
$("").text([val|fn])
$("").val([val|fn|arr])
---------------------------
$("").css("color","red")
<script>
console.log($('.div1').hasClass('fei'));
console.log($('.div1').attr('con'));
console.log($('.div1').attr('con','c2')); console.log($(':checkbox:first').attr('checked'));
console.log($(':checkbox:last').attr('checked')); console.log($(':checkbox:first').prop('checked'));
console.log($(':checkbox:last').prop('checked')); console.log($('div').prop('con')); //定制属性
console.log($('div').prop('class')); //固有属性 console.log($('#id1').html());
console.log($('#id1').text());
console.log($('#id1').html('<h1>zhang</h1>'));
console.log($('#id1').text('<h1>zhang</h1>')); console.log($(':text').val()); //必须是固有属性
console.log($(':text').next().val());
console.log($(':text').val('789')); $('#id1').css({'color':'red','background-color':'blue'});
</script>
2.CSS操作
CSS
$("").css(name|pro|[,val|fn])
位置
$("").offset([coordinates])
$("").position()
$("").scrollTop([val])
$("").scrollLeft([val])
尺寸
$("").height([val|fn])
$("").width([val|fn])
$("").innerHeight()
$("").innerWidth()
$("").outerHeight([soptions])
$("").outerWidth([options])
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{
margin: 0px;
}
.div1,.div2{
width: 200px;
height: 1000px;
}
.div1{
border: 6px solid #ffff00;
padding: 10px;
margin:2px;
background-color: #4cae4c;
}
.div2{
background-color: #0077cc;
}
.outer{
position: relative;
}
</style>
</head>
<body>
<div class="div1"></div>
<div class="outer">
<div class="div2"></div>
</div>
<script src="js/jquery-3.1.1.js"></script>
<script>
//相对于视口的偏移量
console.log($('.div1').offset().top);
console.log($('.div1').offset().left); console.log($('.div2').offset().top);
console.log($('.div2').offset().left);
//相对于已定位父级的偏移量
console.log($('.div1').position().top);
console.log($('.div1').position().left); console.log($('.div2').position().top);
console.log($('.div2').position().left); // console.log($('body').scrollTop())
console.log($('.div1').height('300'));
console.log($('.div1').innerHeight()); //包括padding
console.log($('.div1').outerHeight()); //包括border和padding
console.log($('.div1').outerHeight(true)); //包括border和padding和margin </script>
</body>
</html>
3.文档处理
//创建一个标签对象
$("<p>") //内部插入 $("").append(content|fn) ----->$("p").append("<b>Hello</b>");
$("").appendTo(content) ----->$("p").appendTo("div");
$("").prepend(content|fn) ----->$("p").prepend("<b>Hello</b>");
$("").prependTo(content) ----->$("p").prependTo("#foo"); //外部插入 $("").after(content|fn) ----->$("p").after("<b>Hello</b>");
$("").before(content|fn) ----->$("p").before("<b>Hello</b>");
$("").insertAfter(content) ----->$("p").insertAfter("#foo");
$("").insertBefore(content) ----->$("p").insertBefore("#foo"); //替换
$("").replaceWith(content|fn) ----->$("p").replaceWith("<b>Paragraph. </b>"); //删除 $("").empty()
$("").remove([expr]) //复制 $("").clone([Even[,deepEven]])
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div class="c1">
<p>ppppp</p>
</div>
<button>add</button>
<script src="js/jquery-3.1.1.js"></script>
<script>
$('button').click(function () {
// $('.c1').append('<h1>hello</h1>');
var $ele = $('<h1></h1>');
$ele.html('hello world');
$ele.css('color','red');
//内部插入
// $('.c1').append($ele);
// $ele.appendTo('.c1');
// $('.c1').prepend($ele);
// $ele.prependTo('.c1');
// 外部插入
// $('.c1').after($ele);
// $ele.insertAfter('.c1');
// $('.c1').before($ele);
//替换
// $('p').replaceWith($ele);
//删除与清空
// $('.c1').empty();
// $('.c1').remove();
//复制
var $ele1 = $(self).clone();
$('.c1').after($ele1); })
</script>
</body>
</html>
克隆练习:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div class="outer">
<div class="item">
<button onclick="add(this)">+</button>
<input type="text">
</div>
</div> <script src="js/jquery-3.1.1.js"></script>
<script>
function add(self) {
var $clone = $(self).parent().clone();
$clone.children('button').text('-').attr('onclick','remove(this)');
$('.outer').append($clone);
}
function remove(self) {
$(self).parent().remove();
}
</script>
</body>
</html>
实例:全反选
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/jquery-3.1.1.js"></script>
</head>
<body>
<button onclick="selectall()">全选</button>
<button onclick="cancel()">取消</button>
<button onclick="reverse()">反选</button>
<hr>
<table border="1px;">
<tr>
<td><input type="checkbox"></td>
<td>111</td>
<td>111</td>
<td>111</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>222</td>
<td>222</td>
<td>222</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>333</td>
<td>333</td>
<td>333</td>
</tr>
</table> <script>
function selectall() {
$(':checkbox').each(function () {
$(this).prop('checked',true);
})
}
function cancel() {
$(':checkbox').each(function () {
$(this).prop('checked',false);
})
}
function reverse() {
$(':checkbox').each(function () {
$(this).prop('checked',!$(this).prop('checked'));
// if($(this).prop('checked')==false){
// $(this).prop('checked',true);
// }
// else{
// $(this).prop('checked',false)
// }
})
}
</script>
</body>
</html>
实例:左侧菜单
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/jquery-3.1.1.js"></script>
<style>
.outer{
height: 1000px;
width: 100%;
}
.menu{
float: left;
background-color: #a47e3c;
width: 30%;
height: 500px;
}
.content div{
float: left;
height: 500px;
background-color: #0077cc;
width: 70%;
display: none;
}
.item .title{
background-color: #4cae4c;
line-height: 40px;
}
.hide{
display: none;
}
.content .active{
display: block;
}
</style>
</head>
<body>
<div class="outer">
<div class="menu">
<div class="item">
<div class="title" onclick="show(this)">菜单一</div>
<div class="con current">
<div>111</div>
<div>111</div>
<div>111</div>
</div>
</div>
<div class="item">
<div class="title" onclick="show(this)">菜单二</div>
<div class="con next hide">
<div>222</div>
<div>222</div>
<div>222</div>
</div>
</div>
<div class="item">
<div class="title" onclick="show(this)">菜单三</div>
<div class="con next1 hide">
<div>333</div>
<div>333</div>
<div>333</div>
</div>
</div>
</div>
<div class="content" id="contents">
<div class="active">tab文字内容一</div>
<div>tab文字内容二</div>
<div>tab文字内容三</div>
<div>tab文字内容四</div>
<div>tab文字内容五</div>
<div>tab文字内容六</div>
<div>tab文字内容七</div>
<div>tab文字内容八</div>
<div>tab文字内容九</div>
</div> <script>
function show(self) {
$(self).next().slideDown().parent().siblings().children('.con').slideUp();
// $(self).next().removeClass('hide');
// $(self).parent().siblings().children('.con').addClass('hide');
// $('#contents div').eq($(self).parent().index()).addClass('active').siblings().removeClass('active');
}
$('.item .current div').click(function () {
$('#contents div').eq($(this).index()).addClass('active').siblings().removeClass('active');
}); $('.item .next div').click(function () {
$('#contents div').eq($(this).index()+3).addClass('active').siblings().removeClass('active');
}); $('.item .next1 div').click(function () {
$('#contents div').eq($(this).index()+6).addClass('active').siblings().removeClass('active');
}); // function show1(self) {
// $(self).next().removeClass('hide');
// $(self).parent().siblings().children('.con').addClass('hide');
// $('#contents div').eq($(self).parent().index()+3).addClass('active').siblings().removeClass('active');
// }
// function show2(self) {
// $(self).next().removeClass('hide');
// $(self).parent().siblings().children('.con').addClass('hide');
// $('#contents div').eq($(self).parent().index()+6).addClass('active').siblings().removeClass('active');
// }
</script>
</div>
</body>
</html>
事件
页面载入
ready(fn) //当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。
$(document).ready(function(){}) -----------> $(function(){}) 事件处理
$("").on(eve,[selector],[data],fn) // 在选择元素上绑定一个或多个事件的事件处理函数。 // .on的selector参数是筛选出调用.on方法的dom元素的指定子元素,如:
// $('ul').on('click', 'li', function(){console.log('click');})就是筛选出ul下的li给其绑定
// click事件; [selector]参数的好处:
好处在于.on方法为动态添加的元素也能绑上指定事件;如: //$('ul li').on('click', function(){console.log('click');})的绑定方式和
//$('ul li').bind('click', function(){console.log('click');})一样;我通过js给ul添加了一个
//li:$('ul').append('<li>js new li<li>');这个新加的li是不会被绑上click事件的 //但是用$('ul').on('click', 'li', function(){console.log('click');}方式绑定,然后动态添加
//li:$('ul').append('<li>js new li<li>');这个新生成的li被绑上了click事件 [data]参数的调用:
function myHandler(event) {
alert(event.data.foo);
}
$("li").on("click", {foo: "bar"}, myHandler)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/jquery-3.1.1.js"></script>
<script>
//1.页面加载
// $(document).ready(function () {
// $('ul li').html(6);
// });
// $(function () {
// $('ul li').html(666);
// });
//2.事件绑定简写
$(function () {
$('li').click(function () {
alert('666666');
});
// $('li').unbind('click');
// $('ul li').bind('click',function () {
// alert('666666');
// })
$('button').click(function () {
var $ele=$('<li>');
var len=$('ul li').length;
$ele.html((len+1)*111);
$('ul').append($ele);
}) //3.事件委托
$('ul').on('click','li',function () {
alert('666666');
})
});
</script>
</head>
<body>
<ul>
<li>111</li>
<li>222</li>
<li>333</li>
<li>444</li>
</ul>
<button>add</button> </body>
</html>
实例:返回顶部-滑轮滚动监听事件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style> .div2{
width: 100%;
height: 1000px;
}
.div1{
border: 6px solid #ffff00;
padding: 10px;
margin:2px;
width: 40%;
height: 150px;
overflow: scroll;
background-color: #4cae4c;
}
.div2{
background-color: #0077cc;
}
.returnTop{
position: fixed;
right: 20px;
bottom: 20px;
width: 90px;
height: 50px;
background-color: gray;
color: white;
text-align: center;
line-height: 50px;
}
.hide{
display: none;
} </style>
</head>
<body>
<div class="div1">
<h1>111</h1>
<h1>111</h1>
<h1>111</h1>
<h1>111</h1>
<h1>111</h1>
<h1>111</h1>
<h1>111</h1>
<h1>111</h1>
</div>
<div class="div2">
<button onclick="returnTop()">return</button>
</div>
<div class="returnTop hide" onclick="returnTop()">返回顶部</div>
<script src="js/jquery-3.1.1.js"></script>
<script>
window.onscroll=function () {
console.log($(window).scrollTop());
if($(window).scrollTop()>100){
$('.returnTop').removeClass('hide');
} else{
$('.returnTop').addClass('hide');
}
};
// function returnTop() {
// // $(window).scrollTop(0);
// $('.div1').scrollTop(0);
// }
$('.div2 button').click(function () {
$('.div1').scrollTop(0);
}) </script>
</body>
</html>
动画效果
显示隐藏
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div>hello</div>
<button onclick="show()">显示</button>
<button ONCLICK="hide()">隐藏</button>
<button onclick="qiehuan()">切换</button> <script src="js/jquery-3.1.1.js"></script>
<script>
function show() {
$('div').show(1000);
} function hide() {
$('div').hide(1000,function () {//回调函数:动画效果完成之后会触发
alert('隐藏了!')
});
}
function qiehuan() {
$('div').toggle(1000);
}
</script>
</body> </html>
滑动
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="jquery-2.1.4.min.js"></script>
<script>
$(document).ready(function(){
$("#slideDown").click(function(){
$("#content").slideDown(1000);
});
$("#slideUp").click(function(){
$("#content").slideUp(1000);
});
$("#slideToggle").click(function(){
$("#content").slideToggle(1000);
})
});
</script>
<style> #content{
text-align: center;
background-color: lightblue;
border:solid 1px red;
display: none;
padding: 50px;
}
</style>
</head>
<body> <div id="slideDown">出现</div>
<div id="slideUp">隐藏</div>
<div id="slideToggle">toggle</div> <div id="content">helloworld</div> </body>
</html>
淡入淡出
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/jquery-3.1.1.js"></script>
<script>
$(document).ready(function(){
$("#in").click(function(){
$("#id1").fadeIn(1000); });
$("#out").click(function(){
$("#id1").fadeOut(1000); });
$("#toggle").click(function(){
$("#id1").fadeToggle(1000); });
$("#fadeto").click(function(){
$("#id1").fadeTo(1000,0.4); });
}); </script> </head>
<body>
<button id="in">fadein</button>
<button id="out">fadeout</button>
<button id="toggle">fadetoggle</button>
<button id="fadeto">fadeto</button> <div id="id1" style="display:none; width: 80px;height: 80px;background-color: blueviolet"></div> </body>
</html>
扩展方法
<script> $.extend(object) //为JQuery 添加一个静态方法。
$.fn.extend(object) //为JQuery实例添加一个方法。 jQuery.extend({
min: function(a, b) { return a < b ? a : b; },
max: function(a, b) { return a > b ? a : b; }
});
console.log($.min(3,4)); //----------------------------------------------------------------------- $.fn.extend({
"print":function(){
for (var i=0;i<this.length;i++){
console.log($(this)[i].innerHTML)
} }
}); $("p").print();
</script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<p>111</p>
<p>222</p>
<p>333</p>
<script src="js/jquery-3.1.1.js"></script>
<script>
//jquery调用方法
// $.each(obj,function () {
//
// });
// $('').each(function () {
//
// });
$.extend({
Myprint:function () {
console.log('hello')
}
});
$.Myprint();
jQuery.extend({
min: function(a, b) { return a < b ? a : b; },
max: function(a, b) { return a > b ? a : b; }
});
console.log($.min(3,4)); $.fn.extend({
get_text:function () {
// for(var i=0;i<this.length;i++){
// console.log(this[i].innerHTML)
// }
$.each($(this),function (x,y) {
// console.log(y.innerHTML)
console.log($(y).html())
})
}
});
$('p').get_text();
</script>
</body>
</html>
实例:轮播图
猛击下载 轮播图
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>轮播图</title>
</head>
<style>
body{
background-color: black;
}
.main{
position: relative;
width: 1000px;
height: 400px;
overflow: hidden;
margin: 100px auto;
}
.main ul.img li{
position: absolute;
top: 0;
left: 0;
list-style: none;
} .main ul li img{
width: 1000px;
height: 400px;
}
.main .dom{
position: absolute;
bottom: 20px;
left: 340px;
/*width: 200px;*/
list-style: none;
}
.main .dom li{
display: inline-block;
width: 18px;
height: 18px;
border-radius: 50%;
background-color: white;
margin-left: 40px;
text-align: center;
line-height: 18px;
opacity: 90%;
cursor: pointer;
}
.btn{
display: none;
background-color: lightgray;
position: absolute;
top: 40%;
width: 30px;
height: 60px;
cursor: pointer;
color: white;
font-size: 30px;
text-align: center;
line-height: 60px;
opacity: 0.7;
}
.left{
left: 0px;
}
.right{
right: 0px;
}
.main:hover .btn{
display: block;
}
.main ul.dom .active{
background-color: red;
}
.hide{
display: none;
}
</style>
<body>
<div class="main">
<ul class="img">
<li><a href=""><img src="data:images/beijing3.png" alt=""></a></li>
<li class="hide"><a href=""><img src="data:images/beijing2.png" alt=""></a></li>
<li class="hide"><a href=""><img src="data:images/beijing1.png" alt=""></a></li>
<li class="hide"><a href=""><img src="data:images/xiaomen.png" alt=""></a></li>
</ul>
<span class="btn left"><</span>
<span class="btn right">></span>
<ul class="dom">
<!--<li class="active"></li>-->
<!--<li></li>-->
<!--<li></li>-->
<!--<li></li>-->
</ul>
</div> <script src="jQuery/js/jquery-3.1.1.js"></script>
<script> //通过jquery自动创建按钮标签
var img_num = $('.img li').length;
for(var i=0;i<img_num;i++){
$('.dom').append('<li></li>');
}
$('.dom li').eq(0).addClass('active'); //手动轮播
var num = 0;
$('.dom li').mouseover(function () {
num = $(this).index();
$(this).addClass('active').siblings().removeClass('active');
// $('.img li').eq(index).show().siblings().hide();
// $('.img li').eq(index).fadeIn(1000).siblings().fadeOut(1000);
$('.img li').eq(num).stop().fadeIn(1000).siblings().stop().fadeOut(1000);
}) //自动轮播
var clock = setInterval(auto_play,3000);
function auto_play() {
if (num==img_num-1){
num=-1;
}
num++;
$('.dom li').eq(num).addClass('active').siblings().removeClass('active');
$('.img li').eq(num).stop().fadeIn(1000).siblings().stop().fadeOut(1000);
}
function play_L() {
if (num==0){
num=img_num;
}
num--;
$('.dom li').eq(num).addClass('active').siblings().removeClass('active');
$('.img li').eq(num).stop().fadeIn(1000).siblings().stop().fadeOut(1000);
} //鼠标悬浮
$('.main').hover(function () {
clearInterval(clock);
},function () {
clock = setInterval(auto_play,3000);
}); //button加定播
$('.right').click(auto_play);
$('.left').click(play_L); </script>
</body>
</html>