Skip to content
Snippets Groups Projects
custom.js 772 B
Newer Older
  • Learn to ignore specific revisions
  • $(function() {
    
      // Automatically scroll the navigation menu to the active element
      //   https://github.com/civicrm/civicrm-dev-docs/issues/21
      $.fn.isFullyWithinViewport = function(){
          var viewport = {};
          viewport.top = $(window).scrollTop();
          viewport.bottom = viewport.top + $(window).height();
          var bounds = {};
          bounds.top = this.offset().top;
          bounds.bottom = bounds.top + this.outerHeight();
          return ( ! (
            (bounds.top <= viewport.top) ||
            (bounds.bottom >= viewport.bottom)
          ) );
      };
      if( !$('li.toctree-l1.current').isFullyWithinViewport() ) {
        $('.wy-nav-side')
          .scrollTop(
            $('li.toctree-l1.current').offset().top -
            $('.wy-nav-side').offset().top -
            60
          );
      }
    
    });