1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- document.addEventListener('DOMContentLoaded', function() {
- var menuCollapsed = false,
- mobileMenu = document.getElementById('mobile-menu');
- document.getElementById('btn-menu').addEventListener('click', function() {
- if (menuCollapsed) {
- mobileMenu.style.display = 'none';
- } else {
- mobileMenu.style.display = 'block';
- document.getElementsByTagName('body')[0].style['overflow-y'] = 'hidden';
- }
- menuCollapsed = !menuCollapsed;
- });
- // collapse menu
- var classnameMenuToggler = document.getElementsByClassName('menu-toggler'),
- faAngleUpClass = 'fa-angle-up',
- faAngleDownClass = 'fa-angle-down',
- toggleItemMenu = function(e) {
- e.preventDefault();
- var element = $(e.target);
- if (element.hasClass(faAngleUpClass)) {
- element.addClass(faAngleDownClass);
- element.removeClass(faAngleUpClass);
- } else {
- element.addClass(faAngleUpClass);
- element.removeClass(faAngleDownClass);
- }
- };
- for (var i = 0; i < classnameMenuToggler.length; i++) {
- classnameMenuToggler[i].addEventListener('click', toggleItemMenu, false);
- }
- // Scroll to active link
- var menus = document.querySelectorAll('.menu'),
- i = 0,
- len = menus.length,
- activeMenu,
- activeMenuClass,
- activeLink;
- for (i; i<len; i++) {
- if (getComputedStyle(menus[i]).display != 'none') {
- activeMenu = menus[i];
- activeMenuClass = activeMenu.getAttribute('class').split(' ')[0];
- }
- }
- if (activeMenu) {
- activeLink = document.querySelector('.' + activeMenuClass + ' .active');
- activeMenu.scrollTop = activeLink.offsetTop;
- if (activeLink.innerHTML.toLowerCase().indexOf('readme') != -1 || activeLink.innerHTML.toLowerCase().indexOf('overview') != -1) {
- activeMenu.scrollTop = 0;
- }
- }
- });
|