// 'Back to top' logic function setupBackToTop() { const intersectionObserver = new IntersectionObserver(function(entries) { const topBtn = document.querySelector('.top-of-site-link'); if (topBtn === null) return; topBtn.dataset.visible = entries[0].boundingClientRect.y < 0; }); const topAnchor = document.querySelector('#top-of-site-anchor'); if (topAnchor !== null) { intersectionObserver.observe(topAnchor); } } document.addEventListener('DOMContentLoaded', () => { setupBackToTop(); setupHypothes(); });