本文实例为大家分享了jquery版本轮播图及extend扩展的具体代码,供大家参考,具体内容如下
在南康等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、成都做网站 网站设计制作按需求定制网站,公司网站建设,企业网站建设,品牌网站制作,全网整合营销推广,外贸网站建设,南康网站建设费用合理。具体代码如下
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{ margin:0; padding:0; font-size:14px; -webkit-user-select:none; } ul,li{ list-style:none; } img{ display:block; border:none; } a{ text-decoration: none; } .banner{ position:relative; margin:10px auto; width:1000px; height:300px; overflow:hidden; } .bannerInner{ width:100%; height:100%; background:url("../img/default.gif") no-repeat center center; } .bannerInner div{ position:absolute; top:0; left:0; z-index:0; width:100%; height:100%; opacity: 0; filter:alpha(opacity=0); } .bannerInner div img{ display:none; width:100%; height:100%; } .banner .bannerTip{ position:absolute; right:20px; bottom:20px; z-index:10; overflow:hidden; } .banner .bannerTip li{ float:left; margin-left:10px; width:18px; height:18px; background:lightblue; border-radius:50%; cursor:pointer; } .banner .bannerTip li.bg{ background:orange; } .banner a{ display:none; position:absolute; top:50%; margin-top:-22.5px; z-index:10; width:30px; height:45px; opacity: 0.5; filter:alpha(opacity=50); background-image:url('../img/pre.png'); } .banner a.bannerLeft{ left:20px; background-position:0 0; } .banner a.bannerRight{ right:20px; background-position:-50px 0; } .banner a:hover{ opacity: 1; filter:alpha(opacity=100); } </style> </head> <body> <div class='banner' id='bannerFir'> <div class='bannerInner'> <div><img src="" trueImg='img/banner1.jpg'></div> <div><img src="" trueImg='img/banner2.jpg'></div> <div><img src="" trueImg='img/banner3.jpg'></div> <div><img src="" trueImg='img/banner4.jpg'></div> </div> <ul class='bannerTip'> <li class='bg'></li> <li></li> <li></li> <li></li> </ul> <a href="javascript:;" rel="external nofollow" rel="external nofollow" class='bannerLeft'></a> <a href="javascript:;" rel="external nofollow" rel="external nofollow" class='bannerRight'></a> </div> <script> jQuery.fn.extend({ banner:myBanner }) //通过jQuery选择器或者筛选的方法获取到的jQuery集合是不存在dom映射机制的,之前获取到的dom集合,之后再页面中HTML结构改变了,集合中的内容不会跟着自动发生变化(JS获取的元素集合有DOM映射的机制) function myBanner(selector,ajaxURL,interval){ var $banner = $("#"+selector); var $bannerInner = $banner.children(".bannerInner"),$divList = null,$imgList = null; var $bannerTip = $banner.children(".bannerTip"),$oLis = null var $bannerLeft = $banner.children(".bannerLeft"),$bannerRight = $banner.children(".bannerRight") //1、Ajax读取数据 var jsonData = null; $.ajax({ url:ajaxURL+"?_="+Math.random(), type:'get', dataType::"json", async:false,//当前的请求是同步的 success:function(data){ jsonData = data; } }) //2、实现数据的绑定 function bindData(){ var str = "",str2 = ""; if(jsonData){ //原生的jsonData使用$.each() $.each(jsonData,function(index,item){ str+='<div><img src="" trueImg="'+item["img"]+'"></div>'; index===0?str2+='<li class="bg"></li>':str2+='<li></li>' }) $bannerInner.html(str); $bannerTip.html(str2); $divList = $bannerInner.children("div") $imgList = $bannerInner.find('img') $oLis = $bannerTip.children("li") } } //3、实现图片的延迟加载 window.setTimeout(lazyImg,500); function lazyImg(){ //jquery元素集合 直接写$imgList.each() $imgList.each(function(index,item){ var _this = this; var oImg = new Image; oImg.src = $(this).attr("trueImg");//$(this)等价于$(item) oImg.onload = function(){ $(_this).prop('src',this.src).css("display","block")//内置属性使用prop } }) $divList.eq(0).css("zIndex",1).animate({opacity:1},300); } //封装一个轮播图切换的效果 function changeBanner(){ var $curDiv = $divList.eq(step); $curDiv.css("zIndex",1).siblings().css("zIndex",0); $curDiv.animate({opacity:1},300,function(){ $(this).siblings().css("opacity",0) }) $oLis.eq(step).addClass("bg").siblings().removeClass('bg') } //4、实现自动轮播 interval = interval || 3000; var step = 0,autoTimer = null; autoTimer = window.setInterval(autoMove,interval) function autoMove(){ if(step === jsonData.length-1){ step = -1; } step++; changeBanner(); } //5、控制左右按钮的显示隐藏和自动轮播的开始和暂停 $banner.on('mouseover',function(){ window.clearInterval(autoTimer); $bannerLeft.css("display","block") $bannerRight.css("display","block") }).on('mouseout',function(){ autoTimer = window.setInterval(autoMove,interval); $bannerLeft.css("display","none") $bannerRight.css("display","none") }) //6、实现焦点切换 $oLis.on('click',function(){ step = $(this).index(); changeBanner(); }) //7、实现左右切换 $bannerRight.on('click',autoMove); $bannerLeft.on('click',function(){ if(step===0){ step = jsonData.length; } step--; changeBanner(); }); } //外部使用 $().banner("bannerFir","json/banner.txt",1000) </script> </body> </html>
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站栏目:jquery版轮播图效果和extend扩展-创新互联
URL链接:https://www.cdcxhl.com/article14/jdcge.html
成都网站建设公司_创新互联,为您提供网页设计公司、网站制作、做网站、品牌网站设计、网站策划、微信小程序
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联