今天在逛 Jetbrains 新產品 fleet 的網頁時,看到一個圓形漸層會跟著滑鼠移動的特效,覺得很有意思。
手癢來刻一個類似的。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Glow Cursor</title> <style> .box { width: 300px; height: 300px; border: 2px solid blue; } </style> </head> <body> <div class="box"></div> <script> var box = document.querySelector('.box'); box.addEventListener('mousemove', function (e) { var rect = e.target.getBoundingClientRect(); var x = e.clientX - rect.left; var y = e.clientY - rect.top; box.style.background = `radial-gradient(circle at ${x}px ${y}px, rgba(138, 189, 61, 1) 0%, rgba(255, 255, 255, 1) 150px`; }); box.addEventListener('mouseleave', function () { box.style.background = null; }); </script> </body> </html>
效果大概是這樣 Demo