/*    StaticFade 0.1 - jQuery plugin
 *
 *    BSD license.
 *
 *    Built for the jQuery library:
 *        http://jquery.com
 *
 *    This plugin hides a target element when the mouse stops moving.
 *
 */

(function($) {
    $.fn.staticfade = function(options){
        var defaults = {
            'target':       false,
            'to_opacity':   0.0,
            'out_speed':    1000,
            'in_speed':     300,
            'pause':        2000,
            'debug':        false,
        };
        var settings = $.extend(defaults, options);
        this.each(function() {
            var timer;
            var trigger = $(this);
            if (settings.target) var target = trigger.find(settings.target);
            if (!settings.target) var target = trigger;
            var from_opacity = target.css('opacity');
            trigger.mousemove( function() {
                if (timer) { clearTimeout(timer); timer=0; };
                target.stop(true,false).fadeTo(settings.out_speed, from_opacity);
                timer = setTimeout(function(){
                    target.stop(true,false).fadeTo(settings.in_speed, settings.to_opacity);
                }, settings.pause);
            });
        });
    };
})(jQuery);

