PageSourceSearch

https://treesforall.nl/app/cache/min/1/app/themes/treesforall/static/js/nav.js?ver=1790778472

js treesforall.nl collected 2026-10-02 02:53:44 UTC 5,649 bytes, 10 lines download raw bytes

1if(window.Element&&!Element.prototype.closest){Element.prototype.closest=function(s){var matches=(this.document||this.ownerDocument).querySelectorAll(s),i,el=this;do{i=matches.length;while(--i>=0&&matches.item(i)!==el){}}while((i<0)&&(el=el.parentElement));return el}}
2document.addEventListener("DOMContentLoaded",function(){let stickyContainer=document.querySelector('.sticky');if(stickyContainer!=undefined&&stickyContainer!=null){stickyContainer.parentNode.classList.add('sticky-parent');stickyContainer.closest('.wp-block-columns').classList.add('sticky-container')}
3let currentNavItem=document.querySelectorAll('nav ul li.menu-item-has-children ul li.current-menu-item');for(let i=0;i<currentNavItem.length;i++){if(!currentNavItem[i].parentNode.parentNode.classList.contains('current-menu-parent')){!currentNavItem[i].parentNode.parentNode.classList.add('current-menu-parent')}}
4let menuButton=document.querySelector('.menu-button');let navToggle=document.querySelector('.nav-toggle');let htmlElement=document.querySelector("html");let offCanvasNav=document.querySelector('nav.off-canvas-nav .menu');let touchButton=document.querySelectorAll('nav.off-canvas-nav .menu ul li .toggle-button');let touchButtonLink=document.querySelectorAll('nav.off-canvas-nav .menu ul li.menu-item-has-children > a');if(typeof(navToggle)!='undefined'&&navToggle!=null){navToggle.addEventListener('click',function(e){let self=e.currentTarget;if(e.currentTarget.classList.contains('active')){self.classList.remove('active');menuButton.classList.remove('active');htmlElement.classList.remove('off-canvas');offCanvasNav.classList.remove('active')}else{self.classList.add('active');menuButton.classList.add('active');htmlElement.classList.add('off-canvas');offCanvasNav.style.paddingTop=document.querySelector('header#top').offsetHeight+'px';offCanvasNav.classList.add('active')}})}
5for(let t=0;t<touchButtonLink.length;t++){touchButtonLink[t].addEventListener('click',function(e){e.preventDefault()})}
6for(let t=0;t<touchButton.length;t++){touchButton[t].addEventListener('click',function(e){let self=e.currentTarget;if(!self.parentNode.parentNode.classList.contains('submenu-open')){if(self.parentNode.parentNode.querySelector('ul.submenu-open')!==null){self.parentNode.parentNode.querySelector('ul.submenu-open').classList.remove('submenu-open')}
7self.closest('ul').classList.add('submenu-open');self.parentNode.querySelector('ul').parentNode.classList.add('showing-sub');let currentHeight=self.parentNode.querySelector('ul').clientHeight;self.closest('ul').style.maxHeight=currentHeight+'px';self.closest('ul').style.minHeight=currentHeight+'px'}else{self.parentNode.querySelector('li').classList.remove('showing-sub');self.parentNode.parentNode.classList.remove('submenu-open')}})}
8document.querySelectorAll('.back-to-mainmenu').forEach(perviousButton=>{perviousButton.addEventListener('click',event=>{setTimeout(function(){document.querySelector('.showing-sub').classList.remove('showing-sub')},400);document.querySelector('.submenu-open').style.maxHeight='1200px';document.querySelector('.submenu-open').style.minHeight='0';document.querySelector('.submenu-open').classList.remove('submenu-open')})});document.querySelectorAll('.menu-column__title').forEach(function(title){title.addEventListener('click',function(){const list=this.nextElementSibling;if(!list||!list.classList.contains('menu-column__list'))return;let totalHeight=0;list.querySelectorAll('li').forEach(function(li){totalHeight+=li.offsetHeight});list.classList.toggle('column-open');if(list.classList.contains('column-open')){list.style.maxHeight=totalHeight+'px'}else{list.style.maxHeight='0'}
9let totalHeightParent=0;list.closest('.submenu.has-columns').querySelectorAll('li.back-to-mainmenu, span.menu-column__title, ul.menu-column__list.column-open li:not(.menu-column)').forEach(function(li){totalHeightParent+=li.offsetHeight});list.closest('ul.submenu-open').style.maxHeight=totalHeightParent+'px';list.closest('ul.submenu-open').style.minHeight=totalHeightParent+'px'})});let searchFormInput=document.querySelector('#search-form-container form input[type=text]');let searchFormOverlay=document.querySelector('#search-form-container .search-form-overlay');let searchFormContainer=document.getElementById('search-form-container');let closeSearchButton=document.getElementById('close');document.querySelectorAll('.toggle-search-form').forEach(item=>{item.addEventListener('click',event=>{toggleSearch(item)})});function toggleSearch(toggle_button){let searchFormOffsetHeight=document.querySelector('header').offsetHeight+'px';if(toggle_button.classList.contains('active')){toggle_button.classList.remove('active');searchFormContainer.classList.remove('active')}else{searchFormContainer.style.height=searchFormOffsetHeight;searchFormOverlay.style.top=searchFormOffsetHeight;searchFormInput.style.minHeight=searchFormOffsetHeight;toggle_button.classList.add('active');searchFormContainer.classList.add('active');setTimeout(function(){searchFormContainer.querySelector('input').focus()},100)}}
10document.querySelectorAll('.close-search-trigger').forEach(item=>{item.addEventListener('click',event=>{searchFormContainer.classList.remove('active');document.querySelectorAll('.toggle-search-form').forEach(toggleButton=>{toggleButton.classList.remove('active')})})});document.addEventListener('keydown',function(e){if(searchFormContainer&&searchFormContainer.classList.contains('active')){if(e.key==="Escape"){searchFormContainer.classList.remove('active');document.querySelectorAll('.toggle-search-form').forEach(toggleButton=>{toggleButton.classList.remove('active');toggleButton.focus()})}}})})

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.