Jquery制作--轮播
2015-11-23 02:34
316 查看
HTML代码: <!doctypehtml> <htmllang="zh-CN"> <head> <metacharset="utf-8"> <title>banner图</title> <linkhref="css/style.css"rel="stylesheet"/> <scriptsrc="js/jquery-1.9.1.min.js"></script> <scriptsrc="js/common.js"></script> </head> <body> <divclass="wrap"> <divclass="banner"> <divclass="bannerCon"> <ulclass="imgListclearfix"> <li><ahref="#"><imgsrc="images/banner01.jpg"alt=""/></a></li> <li><ahref="#"><imgsrc="images/banner02.jpg"alt=""/></a></li> <li><ahref="#"><imgsrc="images/banner03.jpg"alt=""/></a></li> </ul> <ulclass="btnListclearfix"> <liclass="cur"><span></span></li> <li><span></span></li> <li><span></span></li> </ul> <spanclass="pre-nexprev"><</span> <spanclass="pre-nexnext">></span> </div> </div> </div> </body> </html> CSS样式:
body,p,ul,ol,li{ margin:0; padding:0; } ul,ol{ list-style:none; } img{border:none;} a,button{outline:none;} .clearfix:after{ visibility:hidden; display:block; font-size:0; content:""; clear:both; height:0; } /*具体样式*/ .banner{ position:relative; height:400px; overflow:hidden; } .banner.bannerCon{ position:absolute; top:0; left:50%; width:800px; height:400px; margin-left:-400px; overflow:hidden; } .bannerCon.imgList{ position:absolute; top:0; left:0; width:99999px; height:400px; } .bannerCon.imgListli{ float:left; width:800px; height:400px; } .bannerCon.imgListlia{ position:relative; display:block; height:100%; } .bannerCon.imgListliimg{ width:800px; height:400px; } .bannerCon.pre-nex{ display:none; position:absolute; top:50%; width:40px; height:60px; margin-top:-40px; font:bold40px/60pxSimsun; color:#ccc; text-align:center; border:none; background:rgba(0,0,0,.30); filter:progid:DXImageTransform.Microsoft.Gradient(startColorStr=#4c000000,endColorStr=#4c000000); cursor:pointer; z-index:3; } .bannerCon.pre-nex.show{display:inline-block;} .bannerCon.prev{left:13%;} .bannerCon.next{right:13%;} .bannerCon.btnList{ position:absolute; left:0; bottom:20px; width:100%; height:12px; text-align:center; z-index:2; _overflow:hidden; } .bannerCon.btnListli{display:inline;} .bannerCon.btnListlispan{ display:inline-block; width:12px; height:12px; margin:05px; border-radius:6px; background-color:#14829e; cursor:pointer; } .bannerCon.btnListli.curspan{background-color:#f30;} js代码:
functionScroll(obj,speed,interval){//父级容器,轮播速度,切换间隔 $("."+obj).each(function(){ var$box=$(this), $imgUl=$box.children(".imgList"), $imgLi=$imgUl.children("li"), $btnUl=$box.children(".btnList"), $btnLi=$btnUl.children("li"), $btnPreNex=$box.children(".pre-nex"), $btnPre=$box.children(".prev"), $btnNex=$box.children(".next"), n=$imgLi.length, width=$imgLi.width(), left=parseFloat($imgUl.css("left")), k=0, Player; $imgUl.css("width",n*width); functionscroll(){//轮播事件 $imgUl.stop().animate({left:-width},speed,function(){ k+=1; $imgUl.css("left",0); $imgUl.children("li:first").appendTo($(this)); $btnLi.removeClass('cur'); if(k>=n){ k=0; } $btnUl.children("li").eq(k).addClass('cur'); }); } $btnLi.click(function(){//小圆点点击事件 varindex=$btnLi.index(this); $(this).addClass('cur').siblings("li").removeClass('cur'); if(index>=k){ vardif=index-k; left=-dif*width; $imgUl.stop().animate({left:left},speed,function(){ $imgUl.css("left",0); $imgUl.children("li:lt("+dif+")").appendTo($imgUl); }); } else{ varj=n-(k-index); $imgUl.css("left",(index-k)*width); $imgUl.children("li:lt("+j+")").appendTo($imgUl); $imgUl.stop().animate({left:0},speed); } k=index; }); $btnPreNex.click(function(){//左右按钮点击事件 varindex=$btnLi.index(this); if($(this).hasClass('next')){ if(!$imgUl.is(":animated")){ k+=1; $imgUl.animate({left:-width},speed,function(){ $imgUl.css("left",0); $imgUl.children("li:first").appendTo($(this)); if(k>=n){ k=0; } $btnUl.children("li").removeClass('cur').eq(k).addClass('cur'); }); } } else{ if(!$imgUl.is(":animated")){ k+=-1; $imgUl.css("left",-width); $imgUl.children("li:last").prependTo($imgUl); $imgUl.stop().animate({left:0},speed); if(k<0){ k=n-1; } $btnUl.children("li").removeClass('cur').eq(k).addClass('cur'); } } }); $box.hover(//鼠标移入、移出事件 function(){ clearInterval(Player); $btnPreNex.addClass('show'); }, function(){ Player=setInterval(function(){scroll()},interval); $btnPreNex.removeClass('show'); } ); Player=setInterval(function(){scroll()},interval); }); } $(function(){//读取轮播事件 Scroll("bannerCon",600,4000); });
相关文章推荐
- HTMl+CSS+JQuery实现简单的图片滑动切换
- jquery实现ajax
- jQuery实现简洁的导航菜单效果
- Jquery 效果使用详解
- jquery实现加载进度条提示效果
- 基于jquery实现省市联动效果
- jQuery实现选中弹出窗口选择框内容后赋值给文本框的方法
- jquery实现表单验证简单实例演示
- jquery自定义表格样式
- jquery实现图片放大镜功能
- jquery无限级联下拉菜单简单实例演示
- 基于jQuery实现简单的折叠菜单效果
- jQuery实现Tab选项卡切换效果简单演示
- jquery_raty
- 学习日记:jQuery之what,why,where,how及应用 (下)
- jQuery.validate失去焦点时执行验证
- jQuery.validate失去焦点时执行验证
- jquery实现动画特效
- jquery语法(3)事件
- jquery validate验证规则重用