jQuery.fn.extend({
	bgSlider:function(opt){
		var src=this
		var block=false,keeper,strchCSS={width:'100%',height:'1200px',left:0,top:0,position:'absolute','z-index':-1},
		dfl={
			interval:4000,
			speed:1500,
			pags:false,
			slideshow:false,
			preload:false,
			current:0
		}
		opt=$.extend(dfl,opt)
		if(opt.pags)opt.pags=$(opt.pags)
		if(opt.preload){
			var tmp=[]
			for(var i=0;i<this.length;i++){
				tmp[i]=new Image()
				tmp[i].src=this[i]
			}
		}
		var loadSrc=function(bgi){
			if(opt.pags)opt.pags.parent().eq(opt.current).addClass('current').siblings().removeClass('current')
			keeper.append(t=$('<div></div>').css(strchCSS).css({'background-image':'url('+bgi+')'}))
			t.css({opacity:0}).animate({opacity:1},opt.speed,function(){
				$(this).siblings().remove()
				block=false
			})
		}
		$('body').append(keeper=$('<div id="bgSlider"></div>').css(strchCSS))
		
		keeper.bind('bgSliderNext',function(){
			if(!block){
				block=true
				opt.current++
				if(!(opt.current<src.length))opt.current=0
				loadSrc(src[opt.current])
			}
		})
		keeper.bind('bgSliderPrev',function(){
			if(!block){
				block=true
				if(opt.current==0)opt.current=src.length
				opt.current--
				loadSrc(src[opt.current])
			}
		})		
		if(opt.pags)$(opt.pags).live('click',function(){
			if(!block){
				block=true
				loadSrc(src[opt.current=this.rel-1])				
			}
			return false
		})
		if(opt.slideshow)setInterval(function(){keeper.trigger('bgSliderNext')},opt.interval)
		loadSrc(src[opt.current])
	}
})
