$(document).ready(function(){
    $('ul.mainmenu').addClass('ready');
    
    $('ul.mainmenu > li').each(function() {

        var nav_container = $(this).find('ul.submenu');
        if (nav_container.length > 0) {
            var nav_open_height = nav_container.height();
            var nav_closed_height = 0;
            
            if (nav_container.width()+nav_container.position().left > $(this).parent().width()) {
                nav_container.css('margin-left', -(nav_container.width()-$(this).width()));
            }
            
            $(this).hover(
                function() {
                    $(this).addClass('hover');
                    nav_container.animate({
                          'height': nav_open_height
                        }, 
                        {
                            duration: 'fast',
                            easing: 'easeInOutQuart',
                            queue: false
                    });
                },
                function() {
                    $(this).removeClass('hover');
                    nav_container.animate({
                            'height': nav_closed_height
                        }, 
                        {
                            duration: 'fast',
                            easing: 'easeInOutQuart',
                            queue: false
                    });
                }
            );
            
            nav_container.height(nav_closed_height);
        }
    });
});

