        jQuery(document).ready(function($) {

            var pos = $('#mainnav').offset();
            var absTopNav = pos.top;
            
            var topNav = parseInt($('#mainnav').css('top').slice(0,-2));
            var heightNav = $('#mainnav').height();
            var absHeightNav = absTopNav + heightNav;
            /*
            var topContent = parseInt($('#inhalt').css('top').slice(0,-2));
            var heightContent = $('#inhalt').height();
            */
            function scrollNav()
            {
                var heightView = $(window).height();
                var offsetCon = $(window).scrollTop();
                var _topNav = parseInt($('#mainnav').css('marginTop').slice(0,-2));
                var deltaOffset = (heightView + offsetCon) - (_topNav + heightNav)
                if(deltaOffset > 0) {
                    var offsetNav = absHeightNav < heightView ? topNav + offsetCon : (heightView - absHeightNav) + topNav + offsetCon; // adjust offset according to free space available below nav
                    $('#mainnav').animate({top: offsetNav+'px'},{duration:500, queue:false});                                            
                } else {
                    if(_topNav - offsetCon > topNav) {
                        var offsetNav = topNav + offsetCon;
                        $('#mainnav').animate({top: offsetNav+'px'},{duration:500, queue:false});                                                                
                    }
                }
            }
            $(window).scroll(scrollNav);
            scrollNav();
        });

