HTML代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="./css/lunbo.css" rel="external nofollow" > </head> <body> <div id="banner"> <ul class="img-ul"></ul> <ol class="index-ol"></ol> <div class="slide"> <span class="prev"><</span> <span class="next">></span> </div> </div> <script src="./js/jquery-1.11.3.js"></script> <script src="./js/lunbo.js"></script> </body> </html>
css代码
div { width: 670px; height: 240px; position: relative; overflow: hidden; } div > ul, div ol { list-style: none; position: absolute; margin: 0; padding: 0; } div > ul.img-ul, div ol.img-ul { width: 3350px; height: 240px; z-index: 100; } div > ul.img-ul > li, div ol.img-ul > li { float: left; width: 670px; height: 240px; } div > ul.index-ol, div ol.index-ol { width: 205px; bottom: 10px; left: 217px; z-index: 1000; } div > ul.index-ol > li, div ol.index-ol > li { float: left; cursor: pointer; margin-left: 20px; background: #000; color: #fff; border-radius: 50%; height: 20px; width: 20px; text-align: center; line-height: 20px; } div > ul.index-ol > li.active, div ol.index-ol > li.active { background: red; } div > div.slide { z-index: 500; position: absolute; width: 670px; height: 240px; left: 0; top: 0; } div > div.slide > span { cursor: pointer; position: absolute; top: 100px; width: 30px; height: 60px; line-height: 60px; text-align: center; font-size: 20px; color: #fff; background: rgba(0, 0, 0, 0.2); } div > div.slide > span:nth-child(1) { left: 0; } div > div.slide > span:nth-child(2) { right: 0; }
JavaScript代码
var arr=[ {"img":"./images/banner_01.jpg"}, {"img":"./images/banner_02.jpg"}, {"img":"./images/banner_03.jpg"}, {"img":"./images/banner_04.jpg"}, {"img":"./images/banner_05.jpg"}, ]; var lunbo={ can:0, //判断 ul_li:"",//图片列表 ol_li:"",//数字列表 width:"",//一个li的宽度 interval:"",//定时器 init:function(){ console.log(this); this.view(); this.view_index(); $("ol.index-ol").children("li:eq(0)").addClass("active"); this.width=$("ul.img-ul>li").width(); //670 this.slide(); //这是左右箭头 this.animation_index();//这是下标 this.play(); //这是自动轮播 this.mouse(); //这是鼠标滑入/滑出 }, mouse:function(){ var _this=this; $("#banner").on({ mouseenter:function(){ _this.stop() }, mouseleave:function(){ _this.play(); } }) }, play:function(){ this.interval=setInterval(function(){ var active_index= parseInt($("ol.index-ol>li.active").attr("data-index"));//得到当前激活向下标 $("ol.index-ol>li").removeClass("active"); $(this).addClass("active"); this.animation(1); (active_index==4)&&(active_index=-1); $("ol.index-ol>li:eq("+(active_index+1)+")").addClass("active") }.bind(this),3000); }, stop:function(){ clearInterval(this.interval) this.interval=null; }, animation_index:function(){//更新下标 var _this=this; $("ol.index-ol>li").mouseenter(function(){//点击下标 var active_index= $("ol.index-ol>li.active").attr("data-index");//得到当前激活向下标 var index=$(this).attr("data-index");//得到当前下标; if(active_index==index){return;}; $("ol.index-ol>li").removeClass("active"); $(this).addClass("active"); var end=index-active_index; _this.animation(-end) }) }, slide:function(){//点击左右箭头 var _this=this; $("div.slide>span").click(function(){ if(_this.can){return;}; var active_index= parseInt($("ol.index-ol>li.active").attr("data-index"));//得到当前激活向下标 $("ol.index-ol>li").removeClass("active"); if(this.className=="prev"){ _this.animation(1); (active_index==1)&&(active_index=5); $("ol.index-ol>li:eq("+(active_index-1)+")").addClass("active") }else{ _this.animation(-1); (active_index==4)&&(active_index=-1); $("ol.index-ol>li:eq("+(active_index+1)+")").addClass("active") } }) }, view:function(){//更新图片 for(var i=0;i<arr.length;i++){ this.ul_li+="<li data-index="+i+"><img src="+arr[i].img+"></li>" } $("ul.img-ul").html(this.ul_li); this.ul_li=""; }, view_index:function(){//更新数字 for(var i=0;i<arr.length;i++){ this.ol_li+="<li data-index="+i+">"+(i+1)+"</li>" } $("ol.index-ol").html(this.ol_li); }, animation:function(n){//做动画 this.can=1; if(n<0){ arr=arr.splice(arr.length+n,-n).concat(arr); this.view(); $("ul.img-ul").css({"left":n*this.width+"px"}); $("ul.img-ul").animate({"left":"0px"},1000,function(){ this.can=0; }.bind(this)); }else{ $("ul.img-ul").animate({"left":-n*this.width+"px"},1000,function(){ arr=arr.concat(arr.splice(0,n)); this.view(); $("ul.img-ul").css({"left":0+"px"}); this.can=0; }.bind(this)); } } }; lunbo.init();
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持小牛知识库!
本文向大家介绍jQuery焦点图轮播效果实现方法,包括了jQuery焦点图轮播效果实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jQuery焦点图轮播效果实现方法。分享给大家供大家参考,具体如下: 前面一篇《JS实现焦点图轮播效果的方法详解》详细介绍了JS实现焦点图轮播效果的步骤,这里来分析一下jQuery的相关实现技巧。 核心代码如下: 和js的区别:用.animate()方法
本文向大家介绍基于JQuery实现图片轮播效果(焦点图),包括了基于JQuery实现图片轮播效果(焦点图)的使用技巧和注意事项,需要的朋友参考一下 自己写了一个纯jq形式的横向轮播焦点图,可点击小圆点或者左右按钮进行切换,属于定宽类型。改成自适应宽度的也不难,将css里面的bannerCon宽度改为百分比,再在js里面将ul和li的宽度跟随父级容器的宽度变化即可,需要用到$(window).res
本文向大家介绍原生js实现焦点轮播图效果,包括了原生js实现焦点轮播图效果的使用技巧和注意事项,需要的朋友参考一下 原生js焦点轮播图主要注意这几点: 1、前后按钮实现切换,同时注意辅助图 2、中间的button随着前后按钮对应切换,同时按button也能跳转到相应的index 3、间隔调用与无限轮播。 4、注意在动画时要停止按钮,或者说上一个动画完毕下一个动画才能执行 5、另外在切换图片的时候,
本文向大家介绍基于jquery实现轮播焦点图插件,包括了基于jquery实现轮播焦点图插件的使用技巧和注意事项,需要的朋友参考一下 直接上代码,可能不是最好的,欢迎吐槽。 Html CSS Css文件可以根据需求自己DIY, 但html的.slider里面的结构应该是一样。 Run 起来: $(".slider').slider({auto: true, interval: 2000}); 改进j
本文向大家介绍jquery实现轮播图效果,包括了jquery实现轮播图效果的使用技巧和注意事项,需要的朋友参考一下 效果如下: 代码如下: 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持呐喊教程!
本文向大家介绍JQuery实现图片轮播效果,包括了JQuery实现图片轮播效果的使用技巧和注意事项,需要的朋友参考一下 【原理简述】 这里大概说一下整个流程: 1,将除了第一张以外的图片全部隐藏, 2,获取第一张图片的alt信息显示在信息栏,并添加点击事件 3,为4个按钮添加点击侦听,点击相应的按钮,用fadeOut,fadeIn方法显示图片 4,设置setInterval,定时执行切换函数 【代