/*! tile transition plugin for Cycle2; version: 20140128 */ (function($){"use strict";$.fn.cycle.transitions.tileSlide=$.fn.cycle.transitions.tileBlind={before:function(opts,curr,next,fwd){opts.API.stackSlides(curr,next,fwd);$(curr).css({display:'block',visibility:'visible'});opts.container.css('overflow','hidden');opts.tileDelay=opts.tileDelay||opts.fx=='tileSlide'?100:125;opts.tileCount=opts.tileCount||7;opts.tileVertical=opts.tileVertical!==false;if(!opts.container.data('cycleTileInitialized')){opts.container.on('cycle-destroyed',$.proxy(this.onDestroy,opts.API));opts.container.data('cycleTileInitialized',true);}},transition:function(opts,curr,next,fwd,callback){opts.slides.not(curr).not(next).css('visibility','hidden');var tiles=$();var $curr=$(curr),$next=$(next);var tile,tileWidth,tileHeight,lastTileWidth,lastTileHeight,num=opts.tileCount,vert=opts.tileVertical,height=opts.container.height(),width=opts.container.width();if(vert){tileWidth=Math.floor(width/num);lastTileWidth=width-(tileWidth*(num-1));tileHeight=lastTileHeight=height;} else{tileWidth=lastTileWidth=width;tileHeight=Math.floor(height/num);lastTileHeight=height-(tileHeight*(num-1));} opts.container.find('.cycle-tiles-container').remove();var animCSS;var tileCSS={left:0,top:0,overflow:'hidden',position:'absolute',margin:0,padding:0};if(vert){animCSS=opts.fx=='tileSlide'?{top:height}:{width:0};} else{animCSS=opts.fx=='tileSlide'?{left:width}:{height:0};} var tilesContainer=$('
');tilesContainer.css({zIndex:$curr.css('z-index'),overflow:'visible',position:'absolute',top:0,left:0,direction:'ltr'});tilesContainer.insertBefore(next);for(var i=0;i').css(tileCSS).css({width:((num-1===i)?lastTileWidth:tileWidth),height:((num-1===i)?lastTileHeight:tileHeight),marginLeft:vert?((i*tileWidth)):0,marginTop:vert?0:(i*tileHeight)}).append($curr.clone().css({position:'relative',maxWidth:'none',width:$curr.width(),margin:0,padding:0,marginLeft:vert?-(i*tileWidth):0,marginTop:vert?0:-(i*tileHeight)}));tiles=tiles.add(tile);} tilesContainer.append(tiles);$curr.css('visibility','hidden');$next.css({opacity:1,display:'block',visibility:'visible'});animateTile(fwd?0:num-1);opts._tileAniCallback=function(){$next.css({display:'block',visibility:'visible'});$curr.css('visibility','hidden');tilesContainer.remove();callback();};function animateTile(i){tiles.eq(i).animate(animCSS,{duration:opts.speed,easing:opts.easing,complete:function(){if(fwd?(num-1===i):(0===i)){opts._tileAniCallback();}}});setTimeout(function(){if(fwd?(num-1!==i):(0!==i)){animateTile(fwd?(i+1):(i-1));}},opts.tileDelay);}},stopTransition:function(opts){opts.container.find('*').stop(true,true);if(opts._tileAniCallback) opts._tileAniCallback();},onDestroy:function(e){var opts=this.opts();opts.container.find('.cycle-tiles-container').remove();}};})(jQuery);