/* Mobile Search Overlay */ var triggerBttn = document.getElementById('trigger-overlaysearch'), overlaysearch = document.querySelector('div.overlaysearch'); transEndEventNames = { 'WebkitTransition': 'webkitTransitionEnd', 'MozTransition': 'transitionend', 'OTransition': 'oTransitionEnd', 'msTransition': 'MSTransitionEnd', 'transition': 'transitionend' }, transEndEventName = transEndEventNames[Modernizr.prefixed('transition')], support = { transitions: Modernizr.csstransitions }; if (overlaysearch != null) { var closeBttn = overlaysearch.querySelector('button.overlaysearch-close'); function toggleOverlay() { if (classie.has(overlaysearch, 'open')) { classie.remove(overlaysearch, 'open'); classie.add(overlaysearch, 'close'); var onEndTransitionFn = function(ev) { if (support.transitions) { if (ev.propertyName !== 'visibility') return; this.removeEventListener(transEndEventName, onEndTransitionFn); } classie.remove(overlaysearch, 'close'); }; if (support.transitions) { overlaysearch.addEventListener(transEndEventName, onEndTransitionFn); } else { onEndTransitionFn(); } } else if (!classie.has(overlaysearch, 'close')) { classie.add(overlaysearch, 'open'); } } triggerBttn.addEventListener('click', toggleOverlay); closeBttn.addEventListener('click', toggleOverlay); } /* Mobile Menu Overlay */ var triggerBttnMenu = document.getElementById('trigger-overlaymenu'), overlaymenu = document.querySelector('div.overlaymenu'); if (overlaymenu != null) { var closeBttnMenu = overlaymenu.querySelector('button.overlaymenu-close'); function toggleOverlayMenu() { if (classie.has(overlaymenu, 'open')) { classie.remove(overlaymenu, 'open'); classie.add(overlaymenu, 'close'); var onEndTransitionFn = function(ev) { if (support.transitions) { if (ev.propertyName !== 'visibility') return; this.removeEventListener(transEndEventName, onEndTransitionFn); } classie.remove(overlaymenu, 'close'); }; if (support.transitions) { overlaymenu.addEventListener(transEndEventName, onEndTransitionFn); } else { onEndTransitionFn(); } } else if (!classie.has(overlaymenu, 'close')) { classie.add(overlaymenu, 'open'); } } triggerBttnMenu.addEventListener('click', toggleOverlayMenu); closeBttnMenu.addEventListener('click', toggleOverlayMenu); } /* Mobile Search Filter Overlay */ var triggerBttnFilter = document.getElementById('trigger-overlayfilter'), overlayfilter = document.querySelector('div.overlayfilter'); if (overlayfilter!=null) { var closeBttnFilter = overlayfilter.querySelector('button.overlayfilter-close'); function toggleOverlayFilter() { if (classie.has(overlayfilter, 'open')) { document.body.style.overflow = 'auto'; classie.remove(overlayfilter, 'open'); classie.add(overlayfilter, 'close'); var onEndTransitionFn = function(ev) { if (support.transitions) { if (ev.propertyName !== 'visibility') return; this.removeEventListener(transEndEventName, onEndTransitionFn); } classie.remove(overlayfilter, 'close'); }; if (support.transitions) { overlayfilter.addEventListener(transEndEventName, onEndTransitionFn); } else { onEndTransitionFn(); } } else if (!classie.has(overlayfilter, 'close')) { document.body.style.overflow = 'hidden'; classie.add(overlayfilter, 'open'); } } triggerBttnFilter.addEventListener('click', toggleOverlayFilter); closeBttnFilter.addEventListener('click', toggleOverlayFilter); }