PageSourceSearch

https://c5.jalbum.net/2026/js/main-2.js?t=470

js jalbum.net collected 2026-09-24 08:27:35 UTC 5,324 bytes, 1 lines download raw bytes

1"use strict";function perspectiveTilt(selector,options){var opts=Object.assign({maxDeg:8,speed:150,scale:1.02,resetOnLeave:true},options);var containers=selector?document.querySelectorAll(selector):document.querySelectorAll("[data-perspective-tilt]");containers.forEach(function(container){var target=container.firstElementChild;if(!target){return;}var maxDeg=parseFloat(container.getAttribute("data-tilt-max"))||opts.maxDeg;var speed=parseFloat(container.getAttribute("data-tilt-speed"))||opts.speed;var scale=parseFloat(container.getAttribute("data-tilt-scale"))||opts.scale;target.style.transition="transform "+speed+"ms ease-out";container.addEventListener("mousemove",function(e){var rect=container.getBoundingClientRect();var x=(e.clientX-rect.left)/rect.width-0.5;var y=(e.clientY-rect.top)/rect.height-0.5;var rotY=x*maxDeg*2;var rotX=-y*maxDeg*2;target.style.transform="rotateX("+rotX+"deg) rotateY("+rotY+"deg) scale3d("+scale+","+scale+","+scale+")";});if(opts.resetOnLeave){container.addEventListener("mouseleave",function(){target.style.transform="rotateX(0) rotateY(0) scale3d(1,1,1)";});}container.addEventListener("touchstart",function(){target.style.transition="none";target.style.transform="none";},{passive:true});});}function horizontalScroller(options){var opts=Object.assign({scrollAmount:0},options);var scrollers=document.querySelectorAll("[data-scroller]");scrollers.forEach(function(scroller){var wrap=scroller.parentElement;if(!wrap){return;}var prevBtn=wrap.querySelector("[data-scroller-prev]");var nextBtn=wrap.querySelector("[data-scroller-next]");function getScrollStep(){if(opts.scrollAmount>0){return opts.scrollAmount;}var firstChild=scroller.firstElementChild;if(!firstChild){return 300;}var style=getComputedStyle(scroller);var gap=parseFloat(style.gap)||parseFloat(style.columnGap)||0;return firstChild.offsetWidth+gap;}function updateButtons(){if(!prevBtn||!nextBtn){return;}var sl=Math.round(scroller.scrollLeft);var maxScroll=scroller.scrollWidth-scroller.clientWidth;prevBtn.disabled=sl<=1;nextBtn.disabled=sl>=maxScroll-1;}if(prevBtn){prevBtn.addEventListener("click",function(){scroller.scrollBy({left:-getScrollStep(),behavior:"smooth"});});}if(nextBtn){nextBtn.addEventListener("click",function(){scroller.scrollBy({left:getScrollStep(),behavior:"smooth"});});}scroller.addEventListener("scroll",updateButtons,{passive:true});window.addEventListener("resize",updateButtons);updateButtons();});}function initSubmenus(){var hamburger=document.querySelector(".nav-hamburger");var navLinks=document.querySelector(".nav-links");var submenus=document.querySelectorAll(".has-submenu");if(hamburger&&navLinks){hamburger.addEventListener("click",function(){navLinks.classList.toggle("mobile-open");if(!navLinks.classList.contains("mobile-open")){submenus.forEach(function(s){s.classList.remove("open");});}});}submenus.forEach(function(item){var link=item.querySelector(":scope > a");if(!link){return;}link.addEventListener("click",function(e){var submenu=item.querySelector(".submenu");if(!submenu){return;}if(window.innerWidth<=900){e.preventDefault();submenus.forEach(function(s){if(s!==item){s.classList.remove("open");}});item.classList.toggle("open");}});});document.addEventListener("click",function(e){if(window.innerWidth>900){submenus.forEach(function(item){if(!item.contains(e.target)){item.classList.remove("open");}});}});}function scrollReveal(selector,options){var opts=Object.assign({visibleClass:"visible",threshold:0.15,stagger:100},options);var elements=document.querySelectorAll(selector);if(!elements.length){return;}var observer=new IntersectionObserver(function(entries){entries.forEach(function(entry,i){if(entry.isIntersecting){setTimeout(function(){entry.target.classList.add(opts.visibleClass);},i*opts.stagger);observer.unobserve(entry.target);}});},{threshold:opts.threshold});elements.forEach(function(el){observer.observe(el);});}function showAfterScroll(options){var opts=Object.assign({visibleClass:"visible"},options);var targets=document.querySelectorAll("[data-show-after]");targets.forEach(function(target){var triggerSelector=target.getAttribute("data-show-after");var trigger=document.querySelector(triggerSelector);if(!trigger){return;}var observer=new IntersectionObserver(function(entries){entries.forEac
1h(function(entry){target.classList.toggle(opts.visibleClass,!entry.isIntersecting);});},{threshold:0});observer.observe(trigger);});}function initToggles(options){var opts=Object.assign({activeClass:"active",groupSelector:"[data-toggle-class]"},options);var groups=document.querySelectorAll(opts.groupSelector);groups.forEach(function(group){var toggleClass=group.getAttribute("data-toggle-class");var targetSelector=group.getAttribute("data-toggle-target");var target=targetSelector==="body"?document.body:document.querySelector(targetSelector);if(!target){return;}var buttons=group.querySelectorAll("[data-toggle-value]");buttons.forEach(function(btn){btn.addEventListener("click",function(){var on=btn.getAttribute("data-toggle-value")==="on";target.classList.toggle(toggleClass,on);buttons.forEach(function(b){b.classList.toggle(opts.activeClass,b===btn);});});});});}document.addEventListener("DOMContentLoaded",function(){perspectiveTilt();horizontalScroller();initSubmenus();scrollReveal(".reveal");showAfterScroll();initToggles();});

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.