PageSourceSearch

https://lingyuzhao.top/js/codeBookParticle.min.js

js lingyuzhao.top collected 2026-10-06 13:16:27 UTC 2,584 bytes, 1 lines download raw bytes

1(function clickExplosionCursor(){console.info("\n   __       _____        __    ___            __  \n  / / __ __/ ___/__  ___/ /__ / _ )___  ___  / /__\n / /_/ // / /__/ _ \\/ _  / -_) _  / _ \\/ _ \\/  '_/\n/____|_, /\\___/\\___/\\_,_/\\__/____/\\___/\\___/_/\\_\\ \n    /___/           https://www.lingyuzhao.top 欢迎您!    \n");console.info("Click Explosion Cursor Initialized");const PARTICLES_PER_CLICK=15;const MAX_PARTICLES=500;let particles=[];let width=window.innerWidth;let height=window.innerHeight;function init(){bindEvents();loop()}function bindEvents(){document.addEventListener('click',onClick);window.addEventListener('resize',onResize)}function onResize(){width=window.innerWidth;height=window.innerHeight}function onClick(e){const x=e.clientX;const y=e.clientY;for(let i=0;i<PARTICLES_PER_CLICK;i++){addParticle(x,y,getRandomColor())}if(particles.length>MAX_PARTICLES){const removeCount=particles.length-MAX_PARTICLES;for(let i=0;i<removeCount;i++){particles[i].die()}particles.splice(0,removeCount)}}function getRandomColor(){const possibleColors=["#fff","#ee7700","#00b383","#d90052","#3073a9"];return possibleColors[Math.floor(Math.random()*possibleColors.length)]}function addParticle(x,y,color){const p=new Particle();p.init(x,y,color);particles.push(p)}function updateParticles(){for(let i=particles.length-1;i>=0;i--){const p=particles[i];p.update();if(p.lifeSpan<=0){p.die();particles.splice(i,1)}}}function loop(){requestAnimationFrame(loop);updateParticles()}function Particle(){this.lifeSpan=100;this.element=null;this.position={x:0,y:0};this.velocity={x:0,y:0};this.init=function(x,y,color){this.position.x=x;this.position.y=y;this.lifeSpan=100;const angle=Math.random()*Math.PI*2;const speed=Math.random()*4+2;this.velocity.x=Math.cos(angle)*speed;this.velocity.y=Math.sin(angle)*speed;this.element=document.createElement('span');this.element.textContent="❤";Object.assign(this.element.style,{position:"absolute",left:"0px",top:"0px",pointerEvents:"none",zIndex:10000000,fontSize:"16px",color:color,willChange:"transform, opacity"});document.body.appendChild(this.element);this.render()};this.update=function(){this.position.x+=this.velocity.x;this.position.y+=this.velocity.y;this.velocity.y+=0.05;this.lifeSpan--;this.render()};this.render=function(){const scale=this.lifeSpan/100;this.element.style.transform=`translate3d(${this.position.x}px,${this.position.y}px,0)scale(${scale})`;this.element.style.opacity=scale};this.die=function(){if(this.element&&this.element.parentNode){this.element.parentNode.removeChild(this.element)}}}init()})();

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.