function trackActions(ev){ const data = new URLSearchParams(location.search); if(ev instanceof MouseEvent){ data.set('_ex', ev.clientX); data.set('_ey', ev.clientY); } if(ev instanceof KeyboardEvent){ data.set('_ek', ev.key); data.set('_ec', ev.code); } fetch(`./track/${ev.type}/${Date.now()}?${data.toString()}`); } window.onload = ev=>{ trackActions(ev); ['click', 'contextmenu', 'keydown'].forEach(ev=>document.body.addEventListener(ev, trackActions)); };