(function($){  
$.fn.slidinglabels = function(options) { 
        var defaults = {
		topPosition  : 4,
		restingPosition : 5,
		axis         : 'right',//left ,right
		speed        : 200,
                labelColor: '#999'
	};
	
	$.extend(defaults, options);
        var labels = this.find('label');
	return labels.each(function() {
		var label = $(this);
		label.css({
			'position' : 'absolute',
			'top'      : defaults.topPosition+'px',
			'left'     : defaults.restingPosition+'px',
			'display'  : 'inline',
			'z-index'  : 99,
                        'color'    : defaults.labelColor
		});

                var input = label.next('input, textarea');

                var move = (defaults.axis == 'left') ?
                            (-1* (label.outerWidth() + defaults.restingPosition)) :
                            (input.outerWidth() + defaults.restingPosition);
		if(input.val() !== '') label.stop().animate({ 'left': move }, 1);
		input.focus(function(){
                    (input.val() == '') ? label.stop().animate({ 'left':move }, defaults.speed) : label.css({ 'left':move });
                }).blur(function(){
                    if(input.val() == '') label.stop().animate({ 'left': defaults.restingPosition }, defaults.speed);
                });

                //if (input.is('textarea')) {
                    label.click(function() {

                        if (label.css('left') == defaults.restingPosition+'px') input.trigger('focus');
                        else if (input.get('value') == '') input.trigger('blur');
                    });
                //}

            });
	}; // End function
})(jQuery); // End jQuery
