﻿$.fn.haccordion = function(options){
	var timeout;
	var settings = $.extend({
		event: "mouseover",
		minwidth: "20",
		selected: "selected",
		items: "div",
		delay: 250
	}, options);
	settings.items = this.children(settings.items);
	if(settings.items.filter("." + settings.selected).length == 0) settings.items.filter(":first").addClass(settings.selected);
	if(!settings.maxwidth) settings.maxwidth = settings.items.filter("." + settings.selected).width();
	
	settings.items[settings.event](function(){
		var self = this;
		window.clearTimeout(timeout);
		timeout = window.setTimeout(function(){
			settings.items.filter(".selected")
				.animate({width: settings.minwidth+"px"}, { queue:false, duration:400 })
				.removeClass("selected");
			$(self)
				.animate({width: settings.maxwidth+"px"}, { queue:false, duration:400})
				.addClass("selected");
		}, settings.delay);
	})

}