script.js (2319B)
1 function artView(evt) { 2 evt.currentTarget.onclick = function() { artReturn(event) }; 3 evt.currentTarget.getElementsByTagName('img')[0].className = "view-full"; 4 evt.currentTarget.getElementsByTagName('p')[0].className = ""; 5 var images = evt.currentTarget.parentElement.children; 6 for (var i=0;i<images.length;i++) { 7 if (images[i] != evt.currentTarget) { 8 images[i].className = "hidden"; 9 } 10 } 11 } 12 function artReturn(evt) { 13 evt.currentTarget.onclick = function() { artView(event) }; 14 evt.currentTarget.getElementsByTagName('img')[0].className = "view-small"; 15 evt.currentTarget.getElementsByTagName('p')[0].className = "hidden"; 16 var images = evt.currentTarget.parentElement.children; 17 for (var i=0;i<images.length;i++) { 18 if (images[i] != evt.currentTarget) { 19 images[i].className = "art-image"; 20 /*console.log(images[i].src);*/ 21 } 22 } 23 } 24 25 function setDefaultParam(target) { 26 var url = location.pathname; 27 var params=new URLSearchParams(window.location.search); 28 params.delete('default'); 29 params.append('default', target) 30 window.history.pushState('N', 'N', url+'?'+params) 31 } 32 33 function unfocusImage() { 34 var image = document.getElementsByClassName('view-full')[0]; 35 if (image) { 36 image.parentElement.click(); 37 } 38 } 39 40 function openTab(evt, target, useHistory=true, unfocus=true) { 41 var tabcontent,tablinks; 42 43 if (useHistory == true) { setDefaultParam(target); } 44 if (unfocus == true) { unfocusImage(); } 45 46 tabcontent=document.getElementsByClassName("tabcontent"); 47 for (var i=0;i<tabcontent.length;i++){ 48 tabcontent[i].style.display="none"; 49 } 50 51 tablinks=document.getElementsByClassName("nav-item"); 52 for (var i=0;i<tablinks.length;i++){ 53 tablinks[i].className="nav-item"; 54 } 55 56 document.getElementById(target).style.display = "grid"; 57 if (evt != null) { 58 if (typeof evt == "string") { 59 document.getElementById("nav-item-"+evt).className += " nav-item-active"; 60 } else { 61 evt.currentTarget.className+=" nav-item-active"; 62 } 63 } 64 } 65 66 var defaultTab; 67 function loadDefault() { 68 defaultTab=new URLSearchParams(window.location.search).get('default'); 69 if (!(['about','animals','people','sketches'].includes(defaultTab))){defaultTab='about';} 70 openTab(defaultTab, defaultTab, false, false); 71 /*document.getElementById("nav-item-".concat(defaultTab)).click();*/ 72 } 73 window.onpopstate = loadDefault; 74 loadDefault();