/**
 * jQuery[a] - Animated scrolling of series
 * Copyright (c) 2007-2008 Ariel Flesler - aflesler(at)gmail(dot)com | http://flesler.blogspot.com
 * Dual licensed under MIT and GPL.
 * Date: 3/20/2008
 * @author Ariel Flesler
 * @version 1.2.1
 *
 * http://flesler.blogspot.com/2008/02/jqueryserialscroll.html
 */
(function(a){var b="serialScroll",c="."+b,d="bind",e=a[b]=function(c){a.scrollTo.window()[b](c)};e.defaults={duration:1e3,axis:"x",event:"click",start:0,step:1,lock:1,cycle:1,constant:1},a.fn[b]=function(b){b=a.extend({},e.defaults,b);var f=b.event,g=b.step,h=b.lazy;return this.each(function(){function u(a){if(!isNaN(a))return a;var b=t(),c;while((c=b.index(a))==-1&&a!=j)a=a.parentNode;return c}function t(){return a(k,j)}function s(){clearTimeout(o)}function r(){i.trigger("next"+c)}function q(a,d){isNaN(d)||(a.data=d,d=j);var e=a.data,f,h=a.type,k=b.exclude?t().slice(0,-b.exclude):t(),n=k.length,p=k[e],q=b.duration;h&&a.preventDefault(),m&&(s(),o=setTimeout(r,b.interval));if(!p){f=e<0?0:f=n-1;if(l!=f)e=f;else{if(!b.cycle)return;e=n-f-1}p=k[e]}!p||h&&l==e||b.lock&&i.is(":animated")||h&&b.onBefore&&b.onBefore.call(d,a,p,i,t(),e)===!1||(b.stop&&i.queue("fx",[]).stop(),b.constant&&(q=Math.abs(q/g*(l-e))),i.scrollTo(p,q,b).trigger("notify"+c,[e]))}function p(a){a.data+=l,q(a,this)}var e=b.target?this:document,i=a(b.target||this,e),j=i[0],k=b.items,l=b.start,m=b.interval,n=b.navigation,o;h||(k=t()),b.force&&q({},l),a(b.prev||[],e)[d](f,-g,p),a(b.next||[],e)[d](f,g,p),j.ssbound||i[d]("prev"+c,-g,p)[d]("next"+c,g,p)[d]("goto"+c,q),m&&i[d]("start"+c,function(a){m||(s(),m=1,r())})[d]("stop"+c,function(){s(),m=0}),i[d]("notify"+c,function(a,b){var c=u(b);c>-1&&(l=c)}),j.ssbound=1,b.jump&&(h?i:t())[d](f,function(a){q(a,u(a.target))}),n&&(n=a(n,e)[d](f,function(a){a.data=Math.round(t().length/n.length)*n.index(this),q(a,this)}))})}})(jQuery)
