- Electronics-
-
- Carrier Phones
- Cellular Signal Boosters
- Prepaid
- Universal Mobile Accessories
- Unlocked Phones
-
'); slider.viewport=el.parent(); slider.loader=$('
'); slider.viewport.prepend(slider.loader); el.css({ width:slider.settings.mode=='horizontal'?(slider.children.length*100+215)+'%':'auto',position:'relative'} ); if(slider.usingCSS&&slider.settings.easing){ el.css('-'+slider.cssPrefix+'-transition-timing-function',slider.settings.easing); } else if(!slider.settings.easing){ slider.settings.easing='swing'; } var slidesShowing=getNumberSlidesShowing(); slider.viewport.css({ width:'100%',overflow:'hidden',position:'relative'} ); slider.viewport.parent().css({ maxWidth:getViewportMaxWidth()} ); if(!slider.settings.pager){ slider.viewport.parent().css({ margin:'0 auto 0px'} ); } slider.children.css({ 'float':slider.settings.mode=='horizontal'?'left':'none',listStyle:'none',position:'relative'} ); slider.children.css('width',getSlideWidth()); if(slider.settings.mode=='horizontal'&&slider.settings.slideMargin>0)slider.children.css('marginRight',slider.settings.slideMargin); if(slider.settings.mode=='vertical'&&slider.settings.slideMargin>0)slider.children.css('marginBottom',slider.settings.slideMargin); if(slider.settings.mode=='fade'){ slider.children.css({ position:'absolute',zIndex:0,display:'none'} ); slider.children.eq(slider.settings.startSlide).css({ zIndex:slider.settings.slideZIndex,display:'block'} ); } slider.controls.el=$('
'); if(slider.settings.captions)appendCaptions(); slider.active.last=slider.settings.startSlide==getPagerQty()-1; if(slider.settings.video)el.fitVids(); var preloadSelector=slider.children.eq(slider.settings.startSlide); if(slider.settings.preloadImages=="all")preloadSelector=slider.children; if(!slider.settings.ticker){ if(slider.settings.pager)appendPager(); if(slider.settings.controls)appendControls(); if(slider.settings.auto&&slider.settings.autoControls)appendControlsAuto(); if(slider.settings.controls||slider.settings.autoControls||slider.settings.pager)slider.viewport.after(slider.controls.el); } else{ slider.settings.pager=false; } loadElements(preloadSelector,start); } var loadElements=function(selector,callback){ var total=selector.find('img, iframe').length; if(total==0){ callback(); return; } var count=0; selector.find('img, iframe').each(function(){ $(this).one('load',function(){ if(++count==total)callback(); } ).each(function(){ if(this.complete)$(this).load(); } ); } ); } var start=function(){ if(slider.settings.infiniteLoop&&slider.settings.mode!='fade'&&!slider.settings.ticker){ var slice=slider.settings.mode=='vertical'?slider.settings.minSlides:slider.settings.maxSlides; var sliceAppend=slider.children.slice(0,slice).clone().addClass('md-bx-clone'); var slicePrepend=slider.children.slice(-slice).clone().addClass('md-bx-clone'); el.append(sliceAppend).prepend(slicePrepend); } slider.loader.remove(); setSlidePosition(); if(slider.settings.mode=='vertical')slider.settings.adaptiveHeight=true; slider.viewport.height(getViewportHeight()); el.redrawSlider(); slider.settings.onSliderLoad(slider.active.index); slider.initialized=true; if(slider.settings.responsive)$(window).bind('resize',resizeWindow); if(slider.settings.auto&&slider.settings.autoStart&&(getPagerQty()>1||slider.settings.autoSlideForOnePage))initAuto(); if(slider.settings.ticker)initTicker(); if(slider.settings.pager)updatePagerActive(slider.settings.startSlide); if(slider.settings.controls)updateDirectionControls(); if(slider.settings.touchEnabled&&!slider.settings.ticker)initTouch(); } var getViewportHeight=function(){ var height=0; var children=$(); if(slider.settings.mode!='vertical'&&!slider.settings.adaptiveHeight){ children=slider.children; } else{ if(!slider.carousel){ children=slider.children.eq(slider.active.index); } else{ var currentIndex=slider.settings.moveSlides==1?slider.active.index:slider.active.index*getMoveBy(); children=slider.children.eq(currentIndex); for(i=1;i<=slider.settings.maxSlides-1;i++){ if(currentIndex+i>=slider.children.length){ children=children.add(slider.children.eq(i-1)); } else{ children=children.add(slider.children.eq(currentIndex+i)); } } } } if(slider.settings.mode=='vertical'){ children.each(function(index){ height+=$(this).outerHeight(); } ); if(slider.settings.slideMargin>0){ height+=slider.settings.slideMargin*(slider.settings.minSlides-1); } } else{ height=Math.max.apply(Math,children.map(function(){ return $(this).outerHeight(false); } ).get()); } if(slider.viewport.css('box-sizing')=='border-box'){ height+=parseFloat(slider.viewport.css('padding-top'))+parseFloat(slider.viewport.css('padding-bottom'))+ parseFloat(slider.viewport.css('border-top-width'))+parseFloat(slider.viewport.css('border-bottom-width')); } else if(slider.viewport.css('box-sizing')=='padding-box'){ height+=parseFloat(slider.viewport.css('padding-top'))+parseFloat(slider.viewport.css('padding-bottom')); } return height; } var getViewportMaxWidth=function(){ var width='100%'; if(slider.settings.slideWidth>0){ if(slider.settings.mode=='horizontal'){ width=(slider.settings.maxSlides*slider.settings.slideWidth)+((slider.settings.maxSlides-1)*slider.settings.slideMargin); } else{ width=slider.settings.slideWidth; } } return width; } var getSlideWidth=function(){ var newElWidth=slider.settings.slideWidth; var wrapWidth=slider.viewport.width(); if(slider.settings.slideWidth==0||(slider.settings.slideWidth>wrapWidth&&!slider.carousel)||slider.settings.mode=='vertical'){ newElWidth=wrapWidth; } else if(slider.settings.maxSlides>1&&slider.settings.mode=='horizontal'){ if(wrapWidth>slider.maxThreshold){ } else if(wrapWidth
'; }; slider.pagerEl.html(pagerHtml); } var appendPager=function(){ if(!slider.settings.pagerCustom){ slider.pagerEl=$('
'); if(slider.settings.pagerSelector){ $(slider.settings.pagerSelector).html(slider.pagerEl); } else{ slider.controls.el.addClass('md-bx-has-pager').append(slider.pagerEl); } populatePager(); } else{ slider.pagerEl=$(slider.settings.pagerCustom); } slider.pagerEl.on('click','a',clickPagerBind); } var appendControls=function(){ slider.controls.next=$(''+slider.settings.nextText+''); slider.controls.prev=$(''+slider.settings.prevText+''); slider.controls.next.bind('click',clickNextBind); slider.controls.prev.bind('click',clickPrevBind); if(slider.settings.nextSelector){ $(slider.settings.nextSelector).append(slider.controls.next); } if(slider.settings.prevSelector){ $(slider.settings.prevSelector).append(slider.controls.prev); } if(!slider.settings.nextSelector&&!slider.settings.prevSelector){ slider.controls.directionEl=$('
'); slider.controls.directionEl.append(slider.controls.prev).append(slider.controls.next); slider.controls.el.addClass('md-bx-has-controls-direction').append(slider.controls.directionEl); } } var appendControlsAuto=function(){ slider.controls.start=$('
'); slider.controls.stop=$('
'); slider.controls.autoEl=$('
'); slider.controls.autoEl.on('click','.md-bx-start',clickStartBind); slider.controls.autoEl.on('click','.md-bx-stop',clickStopBind); if(slider.settings.autoControlsCombine){ slider.controls.autoEl.append(slider.controls.start); } else{ slider.controls.autoEl.append(slider.controls.start).append(slider.controls.stop); } if(slider.settings.autoControlsSelector){ $(slider.settings.autoControlsSelector).html(slider.controls.autoEl); } else{ slider.controls.el.addClass('md-bx-has-controls-auto').append(slider.controls.autoEl); } updateAutoControls(slider.settings.autoStart?'stop':'start'); } var appendCaptions=function(){ slider.children.each(function(index){ var title=$(this).find('img:first').attr('title'); if(title!=undefined&&(''+title).length){ $(this).append('
'+title+'
'); } } ); } var clickNextBind=function(e){ if(slider.settings.auto)el.stopAuto(); el.goToNextSlide(); e.preventDefault(); } var clickPrevBind=function(e){ if(slider.settings.auto)el.stopAuto(); el.goToPrevSlide(); e.preventDefault(); } var clickStartBind=function(e){ el.startAuto(); e.preventDefault(); } var clickStopBind=function(e){ el.stopAuto(); e.preventDefault(); } var clickPagerBind=function(e){ if(slider.settings.auto)el.stopAuto(); var pagerLink=$(e.currentTarget); if(pagerLink.attr('data-slide-index')!==undefined){ var pagerIndex=parseInt(pagerLink.attr('data-slide-index')); if(pagerIndex!=slider.active.index)el.goToSlide(pagerIndex); e.preventDefault(); } } var updatePagerActive=function(slideIndex){ var len=slider.children.length; if(slider.settings.pagerType=='short'){ if(slider.settings.maxSlides>1){ len=Math.ceil(slider.children.length/slider.settings.maxSlides); } slider.pagerEl.html((slideIndex+1)+slider.settings.pagerShortSeparator+len); return; } slider.pagerEl.find('a').removeClass('active'); slider.pagerEl.each(function(i,el){ $(el).find('a').eq(slideIndex).addClass('active'); } ); } var updateAfterSlideTransition=function(){ if(slider.settings.infiniteLoop){ var position=''; if(slider.active.index==0){ position=slider.children.eq(0).position(); } else if(slider.active.index==getPagerQty()-1&&slider.carousel){ position=slider.children.eq((getPagerQty()-1)*getMoveBy()).position(); } else if(slider.active.index==slider.children.length-1){ position=slider.children.eq(slider.children.length-1).position(); } if(position){ if(slider.settings.mode=='horizontal'){ setPositionProperty(-position.left,'reset',0); } else if(slider.settings.mode=='vertical'){ setPositionProperty(-position.top,'reset',0); } } } slider.working=false; slider.settings.onSlideAfter(slider.children.eq(slider.active.index),slider.oldIndex,slider.active.index); } var updateAutoControls=function(state){ if(slider.settings.autoControlsCombine){ slider.controls.autoEl.html(slider.controls[state]); } else{ slider.controls.autoEl.find('a').removeClass('active'); slider.controls.autoEl.find('a:not(.md-bx-'+state+')').addClass('active'); } } var updateDirectionControls=function(){ if(getPagerQty()==1){ slider.controls.prev.addClass('disabled'); slider.controls.next.addClass('disabled'); } else if(!slider.settings.infiniteLoop&&slider.settings.hideControlOnEnd){ if(slider.active.index==0){ slider.controls.prev.addClass('disabled'); slider.controls.next.removeClass('disabled'); } else if(slider.active.index==getPagerQty()-1){ slider.controls.next.addClass('disabled'); slider.controls.prev.removeClass('disabled'); } else{ slider.controls.prev.removeClass('disabled'); slider.controls.next.removeClass('disabled'); } } } var initAuto=function(){ if(slider.settings.autoDelay>0){ var timeout=setTimeout(el.startAuto,slider.settings.autoDelay); } else{ el.startAuto(); } if(slider.settings.autoHover){ el.hover(function(){ if(slider.interval){ el.stopAuto(true); slider.autoPaused=true; } } ,function(){ if(slider.autoPaused){ el.startAuto(true); slider.autoPaused=null; } } ); } } var initTicker=function(){ var startPosition=0; if(slider.settings.autoDirection=='next'){ el.append(slider.children.clone().addClass('md-bx-clone')); } else{ el.prepend(slider.children.clone().addClass('md-bx-clone')); var position=slider.children.first().position(); startPosition=slider.settings.mode=='horizontal'?-position.left:-position.top; } setPositionProperty(startPosition,'reset',0); slider.settings.pager=false; slider.settings.controls=false; slider.settings.autoControls=false; if(slider.settings.tickerHover&&!slider.usingCSS){ slider.viewport.hover(function(){ el.stop(); } ,function(){ var totalDimens=0; slider.children.each(function(index){ totalDimens+=slider.settings.mode=='horizontal'?$(this).outerWidth(true):$(this).outerHeight(true); } ); var ratio=slider.settings.speed / totalDimens; var property=slider.settings.mode=='horizontal'?'left':'top'; var newSpeed=ratio*(totalDimens-(Math.abs(parseInt(el.css(property))))); tickerLoop(newSpeed); } ); } tickerLoop(); } var tickerLoop=function(resumeSpeed){ speed=resumeSpeed?resumeSpeed:slider.settings.speed; var position={ left:0,top:0}; var reset={ left:0,top:0}; if(slider.settings.autoDirection=='next'){ position=el.find('.md-bx-clone').first().position(); } else{ reset=slider.children.first().position(); } var animateProperty=slider.settings.mode=='horizontal'?-position.left:-position.top; var resetValue=slider.settings.mode=='horizontal'?-reset.left:-reset.top; var params={ resetValue:resetValue}; setPositionProperty(animateProperty,'ticker',speed,params); } var initTouch=function(){ slider.touch={ start:{ x:0,y:0} ,end:{ x:0,y:0} } slider.viewport.bind('touchstart',onTouchStart); } var onTouchStart=function(e){ if(slider.working){ e.preventDefault(); } else{ slider.touch.originalPos=el.position(); var orig=e.originalEvent; slider.touch.start.x=orig.changedTouches[0].pageX; slider.touch.start.y=orig.changedTouches[0].pageY; slider.viewport.bind('touchmove',onTouchMove); slider.viewport.bind('touchend',onTouchEnd); } } var onTouchMove=function(e){ var orig=e.originalEvent; var xMovement=Math.abs(orig.changedTouches[0].pageX-slider.touch.start.x); var yMovement=Math.abs(orig.changedTouches[0].pageY-slider.touch.start.y); if((xMovement*3)>yMovement&&slider.settings.preventDefaultSwipeX){ e.preventDefault(); } else if((yMovement*3)>xMovement&&slider.settings.preventDefaultSwipeY){ e.preventDefault(); } if(slider.settings.mode!='fade'&&slider.settings.oneToOneTouch){ var value=0; if(slider.settings.mode=='horizontal'){ var change=orig.changedTouches[0].pageX-slider.touch.start.x; value=slider.touch.originalPos.left+change; } else{ var change=orig.changedTouches[0].pageY-slider.touch.start.y; value=slider.touch.originalPos.top+change; } setPositionProperty(value,'reset',0); } } var onTouchEnd=function(e){ slider.viewport.unbind('touchmove',onTouchMove); var orig=e.originalEvent; var value=0; slider.touch.end.x=orig.changedTouches[0].pageX; slider.touch.end.y=orig.changedTouches[0].pageY; if(slider.settings.mode=='fade'){ var distance=Math.abs(slider.touch.start.x-slider.touch.end.x); if(distance>=slider.settings.swipeThreshold){ slider.touch.start.x>slider.touch.end.x?el.goToNextSlide():el.goToPrevSlide(); el.stopAuto(); } } else{ var distance=0; if(slider.settings.mode=='horizontal'){ distance=slider.touch.end.x-slider.touch.start.x; value=slider.touch.originalPos.left; } else{ distance=slider.touch.end.y-slider.touch.start.y; value=slider.touch.originalPos.top; } if(!slider.settings.infiniteLoop&&((slider.active.index==0&&distance>0)||(slider.active.last&&distance<0))){ setPositionProperty(value,'reset',200); } else{ if(Math.abs(distance)>=slider.settings.swipeThreshold){ distance<0?el.goToNextSlide():el.goToPrevSlide(); el.stopAuto(); } else{ setPositionProperty(value,'reset',200); } } } slider.viewport.unbind('touchend',onTouchEnd); } var resizeWindow=function(e){ if(!slider.initialized)return; var windowWidthNew=$(window).width(); var windowHeightNew=$(window).height(); if(windowWidth!=windowWidthNew||windowHeight!=windowHeightNew){ windowWidth=windowWidthNew; windowHeight=windowHeightNew; el.redrawSlider(); slider.settings.onSliderResize.call(el,slider.active.index); } } el.goToSlide=function(slideIndex,direction){ if(slider.working||slider.active.index==slideIndex)return; slider.working=true; slider.oldIndex=slider.active.index; if(slideIndex<0){ slider.active.index=getPagerQty()-1; } else if(slideIndex>=getPagerQty()){ slider.active.index=0; } else{ slider.active.index=slideIndex; } slider.settings.onSlideBefore(slider.children.eq(slider.active.index),slider.oldIndex,slider.active.index); if(direction=='next'){ slider.settings.onSlideNext(slider.children.eq(slider.active.index),slider.oldIndex,slider.active.index); } else if(direction=='prev'){ slider.settings.onSlidePrev(slider.children.eq(slider.active.index),slider.oldIndex,slider.active.index); } slider.active.last=slider.active.index>=getPagerQty()-1; if(slider.settings.pager)updatePagerActive(slider.active.index); if(slider.settings.controls)updateDirectionControls(); if(slider.settings.mode=='fade'){ if(slider.settings.adaptiveHeight&&slider.viewport.height()!=getViewportHeight()){ slider.viewport.animate({ height:getViewportHeight()} ,slider.settings.adaptiveHeightSpeed); } slider.children.filter(':visible').fadeOut(slider.settings.speed).css({ zIndex:0} ); slider.children.eq(slider.active.index).css('zIndex',slider.settings.slideZIndex+1).fadeIn(slider.settings.speed,function(){ $(this).css('zIndex',slider.settings.slideZIndex); updateAfterSlideTransition(); } ); } else{ if(slider.settings.adaptiveHeight&&slider.viewport.height()!=getViewportHeight()){ slider.viewport.animate({ height:getViewportHeight()} ,slider.settings.adaptiveHeightSpeed); } var moveBy=0; var position={ left:0,top:0}; if(!slider.settings.infiniteLoop&&slider.carousel&&slider.active.last){ if(slider.settings.mode=='horizontal'){ var lastChild=slider.children.eq(slider.children.length-1); position=lastChild.position(); moveBy=slider.viewport.width()-lastChild.outerWidth(); } else{ var lastShowingIndex=slider.children.length-slider.settings.minSlides; position=slider.children.eq(lastShowingIndex).position(); } } else if(slider.carousel&&slider.active.last&&direction=='prev'){ var eq=slider.settings.moveSlides==1?slider.settings.maxSlides-getMoveBy():((getPagerQty()-1)*getMoveBy())-(slider.children.length-slider.settings.maxSlides); var lastChild=el.children('.md-bx-clone').eq(eq); position=lastChild.position(); } else if(direction=='next'&&slider.active.index==0){ position=el.find('> .md-bx-clone').eq(slider.settings.maxSlides).position(); slider.active.last=false; } else if(slideIndex>=0){ var requestEl=slideIndex*getMoveBy(); position=slider.children.eq(requestEl).position(); } if("undefined"!==typeof(position)){ var value=slider.settings.mode=='horizontal'?-(position.left-moveBy):-position.top; setPositionProperty(value,'slide',slider.settings.speed); } } } el.goToNextSlide=function(){ if(!slider.settings.infiniteLoop&&slider.active.last)return; var pagerIndex=parseInt(slider.active.index)+1; el.goToSlide(pagerIndex,'next'); } el.goToPrevSlide=function(){ if(!slider.settings.infiniteLoop&&slider.active.index==0)return; var pagerIndex=parseInt(slider.active.index)-1; el.goToSlide(pagerIndex,'prev'); } el.startAuto=function(preventControlUpdate){ if(slider.interval)return; slider.interval=setInterval(function(){ slider.settings.autoDirection=='next'?el.goToNextSlide():el.goToPrevSlide(); } ,slider.settings.pause); if(slider.settings.autoControls&&preventControlUpdate!=true)updateAutoControls('stop'); } el.stopAuto=function(preventControlUpdate){ if(!slider.interval)return; clearInterval(slider.interval); slider.interval=null; if(slider.settings.autoControls&&preventControlUpdate!=true)updateAutoControls('start'); } el.getCurrentSlide=function(){ return slider.active.index; } el.getCurrentSlideElement=function(){ return slider.children.eq(slider.active.index); } el.getSlideCount=function(){ return slider.children.length; } el.redrawSlider=function(){ slider.children.add(el.find('.md-bx-clone')).width(getSlideWidth()); slider.viewport.css('height',getViewportHeight()); if(!slider.settings.ticker)setSlidePosition(); if(slider.active.last)slider.active.index=getPagerQty()-1; if(slider.active.index>=getPagerQty())slider.active.last=true; if(slider.settings.pager&&!slider.settings.pagerCustom){ populatePager(); updatePagerActive(slider.active.index); } } el.destroySlider=function(){ if(!slider.initialized)return; slider.initialized=false; $('.md-bx-clone',this).remove(); slider.children.each(function(){ $(this).data("origStyle")!=undefined?$(this).attr("style",$(this).data("origStyle")):$(this).removeAttr('style'); } ); $(this).data("origStyle")!=undefined?this.attr("style",$(this).data("origStyle")):$(this).removeAttr('style'); $(this).unwrap().unwrap(); if(slider.controls.el)slider.controls.el.remove(); if(slider.controls.next)slider.controls.next.remove(); if(slider.controls.prev)slider.controls.prev.remove(); if(slider.pagerEl&&slider.settings.controls)slider.pagerEl.remove(); $('.md-bx-caption',this).remove(); if(slider.controls.autoEl)slider.controls.autoEl.remove(); clearInterval(slider.interval); if(slider.settings.responsive)$(window).unbind('resize',resizeWindow); } el.reloadSlider=function(settings){ if(settings!=undefined)options=settings; el.destroySlider(); init(); } init(); return this; } } )(jQuery);