1/* JS Document */ 2 3/****************************** 4 5[Table of Contents] 6 71. Vars and Inits 82. IE Check 93. Set Header 104. Init Search 115. Init Menu 12 13 14******************************/ 15 16$(document).ready(function() 17{ 18 "use strict"; 19 20 /* 21 22 1. Vars and Inits 23 24 */ 25 26 var menu = $('.menu'); 27 var menuActive = false; 28 var header = $('.header'); 29 30 //setHeader(); 31 32 $(window).on('resize', function() 33 { 34 setHeader(); 35 }); 36 37 $(document).on('scroll', function() 38 { 39 setHeader(); 40 }); 41 42 init_ie_check(); 43 //setHeader(); 44 initSearch(); 45 initMenu(); 46 47 /* 48 49 2. IE Check 50 51 */ 52 53 function init_ie_check() 54 { 55 var version = detectIE(); 56 var logo = $('.logo_text'); 57 58 if(version === false) 59 { 60 61 } 62 else if(version >= 12) 63 { 64 65 } 66 else 67 { 68 logo.removeClass('logo_text_not_ie'); 69 } 70 } 71 72 function detectIE() 73 { 74 var ua = window.navigator.userAgent; 75 76 var msie = ua.indexOf('MSIE '); 77 if (msie > 0) // IE 10 or older => return version number 78 { 79 return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10); 80 } 81 82 var trident = ua.indexOf('Trident/'); 83 if (trident > 0) // IE 11 => return version number 84 { 85 var rv = ua.indexOf('rv:'); 86 return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10); 87 } 88 89 var edge = ua.indexOf('Edge/'); 90 if (edge > 0) // Edge (IE 12+) => return version number 91 { 92 return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10); 93 } 94 95 // other browser 96 return false; 97 } 98 99 /* 100 101 3. Set Header 102 103 */ 104 105 function setHeader() 106 { 107 if($(window).scrollTop() > 127) 108 { 109 header.addClass('scrolled'); 110 } 111 else 112 { 113 header.removeClass('scrolled'); 114 } 115 } 116 117 /* 118 119 3. Init Search 120 121 */ 122 123 function initSearch() 124 { 125 if($('.header_search').length) 126 { 127 var search = $('.header_search'); 128 var panel = $('.search_container'); 129 search.on('click', function() 130 { 131 panel.toggleClass('active'); 132 }); 133 } 134 } 135 136 /* 137 138 4. Init Menu 139 140 */ 141 142 function initMenu() 143 { 144 if($('.hamburger').length && $('.menu').length) 145 { 146 var hamb = $('.hamburger'); 147 var close = $('.menu_close_container'); 148 149 hamb.on('click', function() 150 { 151 if(!menuActive) 152 { 153 openMenu(); 154 } 155 else 156 { 157 closeMenu(); 158 } 159 }); 160 161 close.on('click', function() 162 { 163 if(!menuActive) 164 { 165 openMenu(); 166 } 167 else 168 { 169 closeMenu(); 170 } 171 }); 172 173 174 } 175 } 176 177 function openMenu() 178 { 179 menu.addClass('active'); 180 menuActive = true; 181 } 182 183 function closeMenu() 184 { 185 menu.removeClass('active'); 186 menuActive = false; 187 } 188 189 //handle action and active state for desktop nav that is in js/nav.js 190 //initialize with home page as active if nothing set on page load 191 if(localStorage.activePage == null){ 192 localStorage.setItem("activePage", "home"); 193 } 194 195 //set style on page load 196 $('#'+localStorage.activePage).addClass('active'); 197 198 //set which page should be active when navigating 199 $(".main_nav ul li").click(function(e) 200 { 201 localStorage.setItem("activePage", $(this).attr('id')); 202 }); 203 204});
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.