﻿/**
* ------------------------------------------------------------------------------------------------
* @author 	Leandro Mancini leandro@neotix.com.br
* @company  Neotix - Agência Interativa http://www.neotix.com.br/
* @version 	0.1
* ------------------------------------------------------------------------------------------------
*/

(function($){
	$.fn.neoHoverMenu = function(options)
	{
		var defaults = {
			queue: false,
			duration: 300,
			durationSpan: 800,
			durationSubMenu: 1000,
			easing: 'easeOutQuart',
			easingSpan: 'easeOutExpo',
			bgColor: '#162145',
			bgColorHover: '#96730f',
			bgPosition: '0px -100px',
			bgPositionHover: '0px 0px',
			color: '#848484',
			colorHover: '#ffffff',
			scale: 0.5,
			scaleHover: 1,
			scaleEasing: 'easeOutBounce',
			opacity: 0,
			opacityHover: 1
		};

		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.append(newdata);
			
			$(newdata).empty();
			
			$this.bind('mouseenter', function(e){
				$(this).stop().animate({
					backgroundPosition: options.bgPositionHover
				},{
					queue: options.queue,
					duration: options.duration,
					easing: options.easing
				});
				
				$('span', this).stop().animate({
					backgroundPosition: options.bgPositionHover
				},{
					queue: options.queue,
					duration: options.durationSpan,
					easing: options.easingSpan
				}).parent().find('a:eq(0)').stop().animate({
					color: options.colorHover
				},{
					queue: options.queue,
					duration: options.duration,
					easing: options.easing
				});
				
			}).bind('mouseleave', function(e){
				$(this).stop().animate({
					backgroundPosition: options.bgPosition
				},{
					queue: options.queue,
					duration: options.duration,
					easing: options.easing
				});
				
				$('span', this).stop().animate({
					backgroundPosition: options.bgPosition
				},{
					queue: options.queue,
					duration: options.duration,
					easing: options.easingSpan
				}).parent().find('a:eq(0)').stop().animate({
					color: options.color
				},{
					queue: options.queue,
					duration: options.duration,
					easing: options.easing
				});
			});
		});
	};
})(jQuery); 


