1if (document.querySelector('.dropdown')) { 2 var dropdowns = document.querySelectorAll('.dropdown-toggle'); 3 var dropdownContainers = document.querySelectorAll('.dropdown-container'); 4 dropdowns.forEach(function(dropdown){ 5 dropdown.addEventListener('click', function(event){ 6 event.preventDefault(); 7 event.stopPropagation(); 8 dropdownContainers.forEach(function(openDropdown){ 9 if (event.target.parentNode.querySelector('.dropdown-container') != openDropdown && openDropdown.classList.contains('toggled')) { 10 openDropdown.classList.remove('toggled'); 11 } 12 }); 13 this.parentNode.querySelector('.dropdown-container').classList.toggle('toggled'); 14 }); 15 }); 16 window.onclick = function(event) { 17 if (!event.target.closest('.dropdown-container')) { 18 dropdownContainers.forEach(function(openDropdown){ 19 if (openDropdown.classList.contains('toggled')) { 20 openDropdown.classList.remove('toggled'); 21 } 22 }); 23 } 24 } 25} 26 27if (document.querySelector('.nav-toggle')) { 28 document.querySelector('.nav-toggle').addEventListener('click', function(event){ 29 event.preventDefault(); 30 if (document.querySelector('.search') && document.querySelector('.search-toggle')) { 31 document.querySelector('.search-toggle').classList.remove('toggled'); 32 document.querySelector('.search').classList.remove('toggled'); 33 } 34 event.target.classList.toggle('toggled'); 35 document.querySelector('.nav').classList.toggle('toggled'); 36 }); 37} 38if (document.querySelector('.search-toggle')) { 39 document.querySelector('.search-toggle').addEventListener('click', function(event){ 40 event.preventDefault(); 41 if (document.querySelector('.nav') && document.querySelector('.nav-toggle')) { 42 document.querySelector('.nav-toggle').classList.remove('toggled'); 43 document.querySelector('.nav').classList.remove('toggled'); 44 } 45 event.target.classList.toggle('toggled'); 46 document.querySelector('.search').classList.toggle('toggled'); 47 }); 48} 49 50const scrollToTopBtn = document.querySelector('.up'); 51const rootElement = document.querySelector('html'); 52 53if (scrollToTopBtn) { 54 function handleScroll() { 55 const scrollTotal = rootElement.scrollHeight - rootElement.clientHeight; 56 if ((rootElement.scrollTop / scrollTotal ) > 0.10 ) { 57 scrollToTopBtn.classList.add('toggled'); 58 } else { 59 scrollToTopBtn.classList.remove('toggled'); 60 } 61 } 62 document.addEventListener('scroll', handleScroll); 63 scrollToTopBtn.addEventListener('click', function(event) { 64 event.preventDefault(); 65 window.scrollTo(0, 0); 66 }); 67} 68 69if (document.querySelector('.aside-filter')) { 70 document.querySelector('.aside-filter').addEventListener('keyup', function(e) { 71 if (e.target.value.length > 0) { 72 const text = e.target.value.toLowerCase(); 73 e.target.parentNode.querySelectorAll('.aside-menu li').forEach(function(name){ 74 name.setAttribute('data-hidden', 'true'); 75 const item = name.textContent; 76 if (item.toLowerCase().indexOf(text) != -1 && text.length > 0) { 77 name.setAttribute('data-hidden', 'false'); 78 } else { 79 name.setAttribute('data-hidden', 'true'); 80 } 81 }); 82 } else { 83 e.target.parentNode.querySelectorAll('.aside-menu li').forEach(function(name){ 84 name.setAttribute('data-hidden', 'false'); 85 }); 86 } 87 }); 88}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.