1(function (window) { 2 3 'use strict'; 4 5 function classReg(className) { 6 return new RegExp("(^|\\s+)" + className + "(\\s+|$)"); 7 } 8 9 var hasClass, addClass, removeClass; 10 11 if ('classList' in document.documentElement) { 12 hasClass = function (elem, c) { 13 return elem.classList.contains(c); 14 }; 15 addClass = function (elem, c) { 16 elem.classList.add(c); 17 }; 18 removeClass = function (elem, c) { 19 elem.classList.remove(c); 20 }; 21 } else { 22 hasClass = function (elem, c) { 23 return classReg(c).test(elem.className); 24 }; 25 addClass = function (elem, c) { 26 if (!hasClass(elem, c)) { 27 elem.className = elem.className + ' ' + c; 28 } 29 }; 30 removeClass = function (elem, c) { 31 elem.className = elem.className.replace(classReg(c), ' '); 32 }; 33 } 34 35 function toggleClass(elem, c) { 36 var fn = hasClass(elem, c) ? removeClass : addClass; 37 fn(elem, c); 38 } 39 40 var classie = { 41 hasClass: hasClass, 42 addClass: addClass, 43 removeClass: removeClass, 44 toggleClass: toggleClass, 45 has: hasClass, 46 add: addClass, 47 remove: removeClass, 48 toggle: toggleClass 49 }; 50 51 if (typeof define === 'function' && define.amd) { 52 define(classie); 53 } else { 54 window.classie = classie; 55 } 56 57})(window); 58 59(function () { 60 61 triggerBttn = $('div.site-burger--items'), 62 overlay = document.querySelector('div.overlay'), 63 closeBttn = overlay.querySelector('div.menu-item--close'); 64 65 66 function toggleOverlay() { 67 if (classie.has(overlay, 'open')) { 68 classie.remove(overlay, 'open'); 69 classie.remove(container, 'overlay-open'); 70 classie.add(overlay, 'close'); 71 var onEndTransitionFn = function (ev) { 72 if (support.transitions) { 73 if (ev.propertyName !== 'visibility') return; 74 this.removeEventListener(transEndEventName, onEndTransitionFn); 75 } 76 classie.remove(overlay, 'close'); 77 }; 78 if (support.transitions) { 79 overlay.addEventListener(transEndEventName, onEndTransitionFn); 80 } else { 81 onEndTransitionFn(); 82 } 83 } else if (!classie.has(overlay, 'close')) { 84 classie.add(overlay, 'open'); 85 classie.add(container, 'overlay-open'); 86 } 87 } 88 89 triggerBttn.on('click', toggleOverlay); 90 closeBttn.addEventListener('click', toggleOverlay); 91})();
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.