jQuery.fn.happyTextbox = function(options) {

	var defaults = { hoverClass: 'textboxHover', focusClass: 'textboxFocus' };
	var options = jQuery.extend(defaults, options);

	return this.each(function(){
		jQuery(this).mouseover(function(){
			jQuery(this).addClass(options.hoverClass);						   
		}).mouseout(function(){
			jQuery(this).removeClass(options.hoverClass);
		}).focus(function(){
			jQuery(this).removeClass(options.hoverClass);
			jQuery(this).addClass(options.focusClass);
			thisDefaultValue = jQuery(this)[0].defaultValue;
			thisCurrentValue = jQuery(this).val();
			if (thisCurrentValue == thisDefaultValue) { jQuery(this).val(''); }
		}).blur(function(){
			jQuery(this).removeClass(options.focusClass);
			thisDefaultValue = jQuery(this)[0].defaultValue;
			thisCurrentValue = jQuery(this).val();
			if (thisCurrentValue == '') { jQuery(this).val(thisDefaultValue); }
		});	
	});

};
