
(function($){
	
var opts;

//-----------------------------------------------
$.fn.tooltip = function(options)
{
// build main options
opts = $.extend({}, $.fn.tooltip.defaults, options);

$('#'+opts.tooltipid).bind(opts.hideevent, 
function(event) 
	{           		
	$(this).animate({ opacity: 'hide' }, opts.duration, function(){ $(this).css('width', 'auto'); } );
  	
	});

return this.each(function()
  {
  $(this).data('opts', opts);
  
  $(this).bind(opts.showevent, 
    function(event) 
  		{
  		event.preventDefault();   		
  		var position = $(this).offset();
  		
  		var tooltipid=$(this).data('opts').tooltipid;
  		var duration=$(this).data('opts').duration;
  		var leftmod=$(this).data('opts').leftmod;
  		var topmod=$(this).data('opts').topmod;
  		var parentcolor=$(this).data('opts').parentcolor;
  		var tooltipwidth=$(this).data('opts').tooltipwidth;
  				
		$('#'+tooltipid).data('opts', $(this).data('opts') );
				
		if(parentcolor)
		{
		$('#'+tooltipid).css('background-color', $(this).css('background-color') );
		
		if( $(this).css('color') ) $('#'+tooltipid).css('color', $(this).css('color') );
		}
		
		$('#'+tooltipid).html( $(this).html() );
		$('#'+tooltipid).css('left', position.left+leftmod+'px');
		$('#'+tooltipid).css('top', position.top+topmod+'px');    
		
		if(tooltipwidth>0)
		$('#'+tooltipid).css('width', tooltipwidth+'px');  
               	
  		$('#'+tooltipid).animate({ opacity: 'show' }, duration);	
  		});
  		
  
  });
  

};
//-----------------------------------------------
$.fn.tooltip.defaults = 
{
duration  : 100,
tooltipid : 'tooltip',
leftmod	  : -5,
topmod	  : 0,
showevent     : 'click',
parentcolor	  : false,
hideevent     : 'mouseout',
tooltipwidth  : 0
};
	
	
})(jQuery);