有人对掘金个人主页的头像旋转感兴趣吗?

96 阅读1分钟

经常逛掘金帖子,不小心把鼠标放在了头像上,结果发现了个有趣的动画:当鼠标放置在头像时,头像会不断旋转,且旋转速度越来越快,当鼠标移出后旋转停止。

Recording 2024-09-09 at 11.16.39.gif

正好这几天公司没什么事,摸鱼中,闲来没事就浅浅实现了下,很简单很简单~~~

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<style>
  img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    border: 1px solid #ebebeb;
    cursor: pointer;
  }
</style>

<body>
  <img src="./image.png" alt="" srcset="">
</body>
<script>
  const img = document.querySelector('img');
  let deg, frequent = 0;
  let timer = null;
  img.addEventListener('mouseenter', () => {
    timer = setInterval(() => {
      frequent += 0.005;
      deg += frequent;
      img.style.transform = `rotate(${deg}deg)`;
    })
  })
  img.addEventListener('mouseout', () => {
    if (timer) {
      clearInterval(timer);
    }
    frequent = 0;
    deg = 0;
    img.style.transform = `rotate(0deg)`;
  })
</script>

</html>