js图片轮播插件的封装
本文为大家分享了js图片轮播插件的具体代码,供大家参考,具体内容如下
我们拥有10年网页设计和网站建设经验,从网站策划到网站制作,我们的网页设计师为您提供的解决方案。为企业提供网站设计制作、网站制作、微信开发、小程序开发、手机网站制作、H5响应式网站、等业务。无论您有什么样的网站设计或者设计方案要求,我们都将富于创造性的提供专业设计服务并满足您的需求。
我封装的这个轮播插件只需要获取到图片和按钮就可以啦。
css 样式
.body{ width: 700px; margin: 100px auto; position: relative; height: 300px; overflow: hidden; } .body img{ width: 700px; position: absolute; display: none; } .body ul{ position: absolute; bottom: 3px; left: 50%; transform: translateX(-50%); } .body li{ list-style: none; float: left; width: 15px; height: 15px; border-radius: 50px; background: none; border: 2px solid #fff; margin-right: 10px; cursor: pointer; } .active{ background-color: #fff !important; } .body a{ text-decoration: none; position: absolute; display: block; top: 50%; transform: translateY(-50%); height: 50px; width: 30px; background-size: 100% 60%; background-color: rgba(0,0,0,0.3); } .left{ left: 0; background: url('../img/left.png') no-repeat center center; } .right{ right: 0; background: url('../img/right.png') no-repeat center center; }
页面结构 html 代码
js部分,插件调用
封装的插件
(function($){ function slider(options){ this.opts=$.extend({},slider.defaluts,options); this._imgSlider(); } //设置默认值 slider.defaluts={ imgElement:null, liElement:null, leftBtn:null, rightBtn:null, time:2000 } slider.prototype._imgSlider=function(){ var opts=this.opts, index=0, len=opts.imgElement.length, timeInter=null; if(opts.imgElement=='') return; opts.imgElement.eq(0).show(); showTime(); //当鼠标经过 轮播停止,移开继续 opts.imgElement.hover(function() { clearInterval(timeInter); }, function() { showTime(); }); //点击li 显示对应的图片 opts.liElement.click(function(){ var id=$(this).index(); show(id); }); //向左向右 opts.leftBtn.click(function(){ clearInterval(timeInter); --index; index=Math.max(0,index); show(index); showTime(); }); opts.rightBtn.click(function(){ clearInterval(timeInter); ++index; index=Math.min(len-1,index); show(index); showTime(); }); function showTime(){ timeInter=setInterval(function(){ index++; if(index>len){ index=0; } show(index); },opts.time); } function show(index){ opts.imgElement.eq(index).fadeIn(1000).siblings('img').fadeOut(1000); opts.liElement.eq(index).addClass('active').siblings('li').removeClass('active'); } } $.extend({ slider:function(options){ new slider(options); } }) })(jQuery)
效果图
精彩专题分享:jQuery图片轮播 JavaScript图片轮播 Bootstrap图片轮播
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。
文章名称:js图片轮播插件的封装
标题URL:http://lswzjz.com/article/jjhhgi.html