"use strict"; // Mobile menu let menuToggle = document.querySelector('.menu-toggle'); let menu = document.getElementById('menu'); function toggleMenu() { let expanded = menuToggle.getAttribute('aria-expanded'); console.log(expanded); if (expanded === 'true') { closeMenu(); } else { openMenu(); closeInfo(); } } function openMenu() { menu.classList.add('open'); menuToggle.setAttribute('aria-expanded', 'true'); } function closeMenu() { menu.classList.remove('open'); menuToggle.setAttribute('aria-expanded', 'false'); } menuToggle.addEventListener('click', toggleMenu, false); // Mobile info let infoToggle = document.querySelector('.info-toggle'); let info = document.getElementById('info'); function toggleInfo() { let expanded = infoToggle.getAttribute('aria-expanded'); console.log(expanded); if (expanded === 'true') { closeInfo(); } else { openInfo(); closeMenu(); } } function openInfo() { info.classList.add('open'); infoToggle.setAttribute('aria-expanded', 'true'); } function closeInfo() { info.classList.remove('open'); infoToggle.setAttribute('aria-expanded', 'false'); } infoToggle.addEventListener('click', toggleInfo, false); const root = document.documentElement; if(root.classList.contains('entry')) { // Image scroller const viewport = document.querySelector('.image'); const img = viewport.querySelector('img'); const sb = new ScrollBooster({ viewport, img, scrollMode: 'native', emulateScroll: true }); // Thumbnail scroller const MAGIC_NUMBER = .05078125; const content = viewport; let height = content.offsetHeight; let width = content.offsetWidth; const hilite = document.querySelector('.hilite'); const thumbnail = document.querySelector('.thumbnail img'); hilite.style.height = height * MAGIC_NUMBER + 'px'; hilite.style.width = width * MAGIC_NUMBER + 'px'; window.addEventListener('resize', function() { height = content.offsetHeight; width = content.offsetWidth; hilite.style.height = height * MAGIC_NUMBER + 'px'; hilite.style.width = width * MAGIC_NUMBER + 'px'; }, true); content.addEventListener('scroll', function(e) { hilite.style.left = e.target.scrollLeft * MAGIC_NUMBER + 'px'; hilite.style.top = e.target.scrollTop * MAGIC_NUMBER + 'px'; }, {passive: true}); //if ('ontouchstart' in document.documentElement) { thumbnail.addEventListener('touchstart', function(e) { e.preventDefault(); let rect = e.target.getBoundingClientRect(); let x = e.changedTouches[0].pageX - rect.left - (hilite.offsetWidth / 2); let y = e.changedTouches[0].pageY - rect.top - (hilite.offsetHeight / 2); content.scrollTo(x / MAGIC_NUMBER, y / MAGIC_NUMBER); }, false); thumbnail.addEventListener('touchmove', function(e) { e.preventDefault(); let rect = e.target.getBoundingClientRect(); let x = e.changedTouches[0].pageX - rect.left - (hilite.offsetWidth / 2); let y = e.changedTouches[0].pageY - rect.top - (hilite.offsetHeight / 2); content.scrollTo(x / MAGIC_NUMBER, y / MAGIC_NUMBER); }, false); //} else { thumbnail.addEventListener('mousemove', function(e) { let rect = e.target.getBoundingClientRect(); let x = e.clientX - rect.left - (hilite.offsetWidth / 2); let y = e.clientY - rect.top - (hilite.offsetHeight / 2); content.scrollTo(x / MAGIC_NUMBER, y / MAGIC_NUMBER); }, true); //} }