源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

原生javascript实现图片按钮切换

  • 时间:2020-09-13 05:02 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:原生javascript实现图片按钮切换
先给大家看下效果展示图 [img]http://files.jb51.net/file_images/article/201501/201501121032534.jpg[/img] 以下为详细代码:
[url=file://\\s|$]\\s|$[/url])");         for (i = 0, j = 0; i < elsLen; i++) {                 if ( pattern.test(els[i].className) ) {                         classElements[j] = els[i];                         j++;                 }         }         return classElements;     },     getCss:function(node,value)     {         return node.currentStyle?node.currentStyle[value]:getComputedStyle(node,null)[value];     },     setCss:function(node,val){         for(var v in val){             node.style.cssText += ';'+ v +':'+val[v];         }     },     moveFn:function(node,value,targetValue,callback){         var _that = this;         clearInterval(this.timer);         this.timer = setInterval(function()         {             var val = parseFloat(_that.getCss(node,value));             var speed = ( targetValue- val )/8;             speed = speed>0?Math.ceil(speed):Math.floor(speed);             if(speed ==0)             {                 clearInterval(_that.timer);                 callback&&callback();             }             else             {                                    node.style[value] = ( val + speed ) +'px';                                }                     },20);     },     picChange:function(){         this.moveFn(this.oUl,'marginLeft',-this.nIndex*this.nSwitchWidth);     },     cancelBubble:function(e){         e.stopPropagation?e.stopPropagation():e.cancelBubble = true;     },     btnIsShow:function(){         this.setCss(this.oBtnNext,{'display':'block'});         this.setCss(this.oBtnPrev,{'display':'block'});         if( this.nIndex == 0 ) this.setCss(this.oBtnPrev,{'display':'none'});         if( this.nIndex ==(this.nScollLen-1) ) this.setCss(this.oBtnNext,{'display':'none'});     },     btnPrev:function(){         var _that = this;         this.oBtnPrev.onclick = function(e){             var e = e || window.event;             _that.cancelBubble(e);             if(_that.nIndex != 0 ) {                 _that.nIndex--;                 _that.picChange();                 _that.btnIsShow();             }         }     },     btnNext:function(){         var _that = this;         this.oBtnNext.onclick = function(e){             var e = e || window.event;             _that.cancelBubble(e);             if(_that.nIndex != (_that.nScollLen-1) ) {                 _that.nIndex++;                 _that.picChange();                 _that.btnIsShow();             }         }     },     int:function(){         //动态获取移动的宽度         var oLi = this.oUl.getElementsByTagName('li')[0],             oLi_w = oLi.offsetWidth + parseInt(this.getCss(oLi,'marginLeft')) + parseInt(this.getCss(oLi,'marginRight'));         this.nSwitchWidth = oLi_w*this.nScollCount;         //按钮显示初始化         this.btnIsShow();         //左右切换         this.btnPrev();         this.btnNext();     } }
   HTML代码:
[u]复制代码[/u] 代码如下:
/* * HTML结构必需是以下:外层ID名,自己传入 如下面的:id="gy_picSwitch02" ,ID名,自己随便给 但,里面的结构必需一样,包括类名classname <div id="gy_picSwitch02">     <span class="gy_picSwitch_prev"></span>     <span class="gy_picSwitch_next"></span>     <div class="gy_picSwitch_listWrap">         <ul>             <li><img src="images/pic01.jpg" alt=""></li>             <li><img src="images/pic02.jpg" alt=""></li>             <li><img src="images/pic03.jpg" alt=""></li>             <li><img src="images/pic04.jpg" alt=""></li>             <li><img src="images/pic05.jpg" alt=""></li>             <li><img src="images/pic06.jpg" alt=""></li>             <li><img src="images/pic07.jpg" alt=""></li>             <li><img src="images/pic08.jpg" alt=""></li>         </ul>     </div> </div>
参数:'wrapID':'xxxx',最外层的ID名       'scrollCount':5,滚动的数量  
[u]复制代码[/u] 代码如下:
   * */ //实例化  new LGY_picSwitch({'wrapID':'gy_picSwitch','scrollCount':5});
是不是很方便的功能呢,使用也很简单,这里推荐给小伙伴,希望对大家能有所帮助
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部