﻿(function($){
	$.fn.neoArrowHover = function(options)
	{
		var defaults = {
			queue: false,
			duration: 300,
			easing: 'linear',
			bgColor: '#fff',
			bgColorHover: '#f71755',
			txtColor: '#000',
			txtColorHover: '#fff',
			bgPosition: '0 0'
		};

		var options = $.extend(defaults, options);
		
		return this.each(function(){
			var $this = $(this);
			var data = $this.html();
			var newdata = $(document.createElement('span')).html(data);
			var elWidth = $this.width();
			var elHeight = $this.height();
			var elPosBg = '0 ' + (-elHeight) + 'px';
			
			$this.empty().append(newdata);

			$this.bind('mouseenter', function(e){
				$(this).stop().animate({
					backgroundPosition: elPosBg,
					backgroundColor: options.bgColorHover
				},{
					queue: options.queue,
					duration: options.duration
				});
				
				$('span', this).stop().animate({ 
					margin: 0 
				},{ 
					queue: options.queue, 
					duration: options.duration
				}).stop().animate({
					color: options.txtColorHover
				},{
					queue: options.queue,
					duration: options.duration
				});
			}).bind('mouseleave', function(e){
				$(this).stop().animate({
					backgroundPosition: options.bgPosition,
					backgroundColor: options.bgColor
				},{
					queue: options.queue,
					duration: options.duration
				});
				
				$('span', this).stop().animate({
					margin: 0
				},{
					queue: options.queue,
					duration: options.duration
				}).stop().animate({
					color: options.txtColor
				},{
					queue: options.queue,
					duration: options.duration
				});
			});
		});
	};
})(jQuery); 


