/** * vTicker jQuery plugin * https://github.com/richhollis/vticker * Released under the MIT license */ !function(e){var t={speed:700,pause:4e3,showItems:1,mousePause:!0,height:0,animate:!0,margin:0,padding:0,startPaused:!1},i={moveUp:function(e,t){i.animate(e,t,"up")},moveDown:function(e,t){i.animate(e,t,"down")},animate:function(t,i,a){var n=t.itemHeight,s=t.options,l=t.element,r=l.children(".uael-slide-main_ul"),d="up"===a?".uael-slide-block:first":".uael-slide-block:last";l.trigger("vticker.beforeTick");var u=r.children(d).clone(!0);if(s.height>0&&(n=r.children(".uael-slide-block:first").height()),n+=s.margin+2*s.padding,"down"===a&&r.css("top","-"+n+"px").prepend(u),l.hasClass("uael-adjust-width")){var o=l.children(".uael-slide-main_ul").children(".uael-slide-block:nth-child(2)").find(".uael-slide_text").width();l.delay(s.speed/2).animate({width:o},s.speed/1.6)}if(i&&i.animate){if(t.animating)return;t.animating=!0;var h="up"===a?{top:"-="+n+"px"}:{top:0};r.animate(h,s.speed,function(){e(r).children(d).remove(),e(r).css("top","0px"),t.animating=!1,l.trigger("vticker.afterTick")})}else r.children(d).remove(),r.css("top","0px"),l.trigger("vticker.afterTick");"up"===a&&u.appendTo(r)},nextUsePause:function(){if(e(this).data("state")){var t=e(this).data("state"),i=t.options;if(t.isPaused||t.itemCount<2)return;a.next.call(this,{animate:i.animate})}},startInterval:function(){var t=e(this).data("state");if(t){var a=t.options,n=this;t.intervalId=setInterval(function(){i.nextUsePause.call(n)},a.pause)}},stopInterval:function(){var t=e(this).data("state");t.intervalId&&clearInterval(t.intervalId),t.intervalId=void 0},restartInterval:function(){i.stopInterval.call(this),i.startInterval.call(this)}},a={init:function(n){a.stop.call(this);var s=jQuery.extend({},t),l=(n=e.extend(s,n),e(this)),r={itemCount:l.children(".uael-slide-main_ul").children(".uael-slide-block").length,itemHeight:0,itemMargin:0,element:l,animating:!1,options:n,isPaused:!!n.startPaused,pausedByCode:!1};if(e(this).data("state",r),l.hasClass("uael-adjust-width")){var d=l.children(".uael-slide-main_ul").children(".uael-slide-block:nth-child(1)").find(".uael-slide_text").width()+2;l.css({overflow:"hidden",position:"relative",width:d}).children(".uael-slide-main_ul").css({position:"relative",margin:0,padding:0}).children(".uael-slide-block").css({margin:n.margin,padding:n.padding})}else l.children(".uael-slide-main_ul").css({position:"relative",margin:0,padding:0}).children(".uael-slide-block").css({margin:n.margin,padding:n.padding});if(isNaN(n.height)||0===n.height){l.children(".uael-slide-main_ul").children(".uael-slide-block").each(function(){var t=e(this).children(".uael-slide_text");t.height()>r.itemHeight&&(r.itemHeight=t.height())}),l.children(".uael-slide-main_ul").children(".uael-slide-block").each(function(){e(this).height(r.itemHeight)});var u=n.margin+2*n.padding;l.height((r.itemHeight+u)*n.showItems+n.margin)}else l.height(n.height);var o=this;n.startPaused||i.startInterval.call(o),n.mousePause&&l.bind("mouseenter",function(){!0!==r.isPaused&&(r.pausedByCode=!0,i.stopInterval.call(o),a.pause.call(o,!0))}).bind("mouseleave",function(){(!0!==r.isPaused||r.pausedByCode)&&(r.pausedByCode=!1,a.pause.call(o,!1),i.startInterval.call(o))})},pause:function(t){var i=e(this).data("state");if(i){if(i.itemCount<2)return!1;i.isPaused=t;var a=i.element;t?(e(this).addClass("paused"),a.trigger("vticker.pause")):(e(this).removeClass("paused"),a.trigger("vticker.resume"))}},next:function(t){var a=e(this).data("state");if(a){if(a.animating||a.itemCount<2)return!1;i.restartInterval.call(this),i.moveUp(a,t)}},prev:function(t){var a=e(this).data("state");if(a){if(a.animating||a.itemCount<2)return!1;i.restartInterval.call(this),i.moveDown(a,t)}},stop:function(){e(this).data("state")&&i.stopInterval.call(this)},remove:function(){var t=e(this).data("state");if(t){i.stopInterval.call(this);var a=t.element;a.unbind(),a.remove()}}};e.fn.vTicker=function(t){return a[t]?a[t].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof t&&t?void e.error("Method "+t+" does not exist on jQuery.vTicker"):a.init.apply(this,arguments)}}(jQuery);