/**
 * @author Mikael Biström
 * v. 1.0
 *
 * Implement on a UL element containing a list of navigation items.
 *	(ul -> li -> a)
 
 
 IMPLEMENTATION SNIPPET
 
 <script>
	$(document).ready(function(){
		$('#nav').AnimateMenuBG({
			inSpeed : 0,
			outSpeed : 0,
			targetY : '0px',
			targetX : '0px',
			startY : '0px',
			startX : '0px'
		});
	});
</script>
 
 
 */


(function($) {
	$.fn.AnimateMenuBG = function(settings) {
		var config = {
			inSpeed 	: 400,
			outSpeed 	: 800,
			targetY 	: '20px',
			targetX 	: '20px',
			startY		: 0,
			startX		: 0
		};
		
		if (settings) $.extend(config, settings);
		
		this.each(function() {
			var $this = $(this);
			
			var _inSpeed 	= settings.inSpeed;
			var _outSpeed	= settings.outSpeed;
			var _targetY	= settings.targetY;
			var _targetX	= settings.targetX;
			var _startY		= settings.startY;
			var _startX		= settings.startX;
			
			
			$this.bind({
				mouseenter : function(){
					$(this).stop().animate({ 'backgroundPosition': _targetX + ' ' + _targetY }, {duration:_inSpeed}); 
				},
				mouseleave : function(){
					$(this).stop().animate({ 'backgroundPosition': _startX + ' ' + _startY }, {duration:_outSpeed}); 
				}
			});
			
			
			
		});
		return this;
	};
})(jQuery);