当前位置: 首页 > article >正文

前端小技巧-网页点击动画效果

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>点击触发动画效果</title>
    <link rel="stylesheet" href="styles.css" />
  </head>
  <style>
    /* styles.css */
    @keyframes riseAndFade {
      from {
        transform: translateY(0);
        opacity: 1;
      }
      to {
        transform: translateY(-100px);
        opacity: 0;
      }
    }

    body {
      margin: 0;
      height: 100vh;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #f0f0f0;
      cursor: pointer;
    }

    .rise-fade {
      position: absolute;
      font-size: 20px;
      font-weight: 700;
      white-space: nowrap;
      animation: riseAndFade 1.5s ease forwards;
      pointer-events: none;
    }
  </style>
  <body>
    <script>
      // script.js
      document.addEventListener("DOMContentLoaded", function () {
        var phrases = [
          "VUE2!",
          "VUE3!",
          "React",
          "Node",
          "Element UI",
        ];

        document.body.addEventListener("click", function (event) {
          var randomPhrase =
            phrases[Math.floor(Math.random() * 6)];
          var textElement = document.createElement("div");
          textElement.className = "rise-fade";
          textElement.textContent = randomPhrase;
          textElement.style.color = "hsl(" + Math.random() * 360 + ", 50%, 50%)";

          document.body.appendChild(textElement);
          textElement.style.left =
            event.pageX - textElement.offsetWidth / 2 + "px";
          textElement.style.top = event.pageY - textElement.offsetHeight + "px";

          setTimeout(function () {
            textElement.remove();
          }, 1100); // 100ms延迟确保动画完成
        });
      });
    </script>
  </body>
</html>

原文地址:https://blog.csdn.net/weixin_45859470/article/details/142910674
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/349609.html

相关文章:

  • CSS——表格、表单、链接和导航菜单
  • Python Django 数据库优化与性能调优
  • 线性代数杂谈(2)——逆,转置与置换矩阵
  • 机器学习:opencv--人脸检测以及微笑检测
  • 【vue】vue-router_ vue3路由管理器
  • 5个 elasticsearch实战应用案例和详细分析
  • SuperMap GIS基础产品FAQ集锦(20241014)
  • Python机器学习数据清洗到特征工程策略
  • go语言中的函数详解
  • Spring 循环依赖详解:问题分析与三级缓存解决方案
  • 数据分析:宏基因组群落TOPOSCORE拓扑结构打分
  • 智慧引擎:探索十款顶尖AI知识库软件的奥秘
  • 车载 3D 地图如何从技术上实现渲染品质的全面提升?
  • mqtt学习
  • 论文笔记:Prototypical Verbalizer for Prompt-based Few-shot Tuning
  • sql server尽量避免滥用影响性能的标量函数
  • 修改PostgreSQL表中的字段排列顺序
  • 99. UE5 GAS RPG 被动技能实现
  • Qml-Item的函数使用
  • 如何有效进行主机加固?深信达MCK提供答案