如何设置独特的鼠标点击效果?

使用原生JS实现鼠标点击爱心效果 !!! 使用原生JS,实现鼠标点击爱心效果 !!! 引言: 在很多时候我们都需要实现鼠标点击出现图案或者文字这样的效果,对于用户而言,这样的体验是很极致的。其实实现起来也很简单,下面一起来学习一下吧。文末附上完整代码,可以复制关键部分直接使用到自己的页面上 实现效果 这样的效果很常用,在很多网页博客中都有使用 实现思路 首先我们需要获取到当前鼠标点击的位置 需要在当前位置生成一个标签 需要给标签添加随机的自定义内容 随机的文本颜色 添加文本的淡出效果 清除淡出的标签 实现过程 下面的代码为了分开解释进行了拆分 阅读详情

先上效果图:
在这里插入图片描述
实现代码:

<script>
export default {
  name: "index",
  data() {
    return {
      txt: ["给个关注", "有求必应", "交个朋友", "多多留言", "点个赞吧"]
    };
  },
  beforeMount() {
    let _this = this;
    this.$nextTick(() => {
      let ele = document.getElementById("app"); // 获取根节点
      if (!ele) return; // 如果根节点不存在 则直接返回
      ele.addEventListener("click", element => {
        const LEFT = element.clientX;
        const TOP = element.clientY;
        let heart = document.createElement("b"); // 创建 ❤️ 元素
        heart.onselectstart = new Function("event.returnValue=false"); 
        document.body.appendChild(heart).innerHTML = `❤ ${_this.randomTxt()} ❤`; // 添加文案
        heart.style.cssText = "position: fixed;left:-100%;"; // 快捷给元素设置多个css属性
        var f = 16, // 字体大小
          x = event.clientX - f / 2, // 横坐标
          y = event.clientY - f, // 纵坐标
          c = _this.randomColor(), // 随机颜色
          a = 1, // 透明度
          s = 1.2; // 放大缩小

        var timer = setInterval(function() {
          if (a <= 0) {
            document.body.removeChild(heart);
            clearInterval(timer);
          } else {
            heart.style.cssText =
              "font-size:16px;cursor: default;position: fixed;color:" +
              c +
              ";left:" +
              x +
              "px;top:" +
              y +
              "px;opacity:" +
              a +
              ";transform:scale(" +
              s +
              ");";

            y--;
            a -= 0.016;
            s += 0.002;
          }
        }, 12);
      });
    });
  },
  methods: {
    // 随机文案
    randomTxt() {
      let index = Math.floor(Math.random() * 5);
      return this.txt[index];
    },
    // 随机颜色
    randomColor() {
      return (
        "rgb(" +
        ~~(Math.random() * 255) +
        "," +
        ~~(Math.random() * 255) +
        "," +
        ~~(Math.random() * 255) +
        ")"
      );
    }
  }
};
</script> 

如果想全局添加该效果,可将该文件混入到App.vue即可

光环滑动按钮 <!DOCTYPE html> <html> <head> <meta name="format-detection" content="email=no" /> <meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="apple-mobile-web-app-status-bar-style" content="... 阅读详情

相关推荐

Vue实现 点击显示再点击隐藏效果(点击页面空白区域也隐藏效果)

主要介绍了Vue实现 点击显示 再点击隐藏 点击页面空白区域也隐藏效果,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

鼠标点击特效

展示: (function() { window.onclick = function(event) { var heart = document.createElement("b"); heart.onselectstart = new Function('event.r...

weixin_34236497的博客 331

labview汽车电子通用测试程序架构,CAN通讯上位机

结合做过的汽车电子测试项目,车身控制器测试,CAN网络模块测试,电机控制器功能测试,汽车仪表盘视觉及功能测试、电气盒功能测试、EOL下线检测、车用空调控制器功能测试等项目,结合实际项目,整理编写的一个汽车电子,通用测试架构,包含项目的讲解等。6、数据保存 、数据处理、 曲线显示 、报警处理等。7、CAN总线故障信息监控及记录保存。2、参数设置(CAN端口及参数)5、CAN通讯+数据解析。

ali2805486883的博客 2753

vue实现鼠标经过显示悬浮框效果,使用Vue的v-show指令和CSS的:hover伪类,利用Vue的数据绑定

在上面的代码中,我们在组件的data选项中定义了一个名为showTip的数据属性,并将它的初始值设置为false,表示悬浮框默认是不显示的。在模板中,我们使用@mouseover和@mouseleave监听鼠标经过和离开事件,然后修改showTip的值来控制悬浮框的显示和隐藏。利用Vue的数据绑定,实现鼠标悬浮时显示悬浮框,鼠标移开时隐藏悬浮框的效果。如果需要实现多个鼠标悬浮框效果,可以在组件中添加多个showTip属性,并使用不同的名称来控制各自的悬浮框显示和隐藏。步骤二:为悬浮框添加样式。

飙歌的博客 6858

EPS+ArcGIS+CASS三剑客:等高线裁剪的完整工作流与避坑指南

本文详细介绍了EPS、ArcGIS和CASS三款软件在等高线裁剪中的协同工作流程与避坑指南。通过发挥各软件优势,解决数据完整性、拓扑准确性和流程可靠性等核心挑战,提升40%以上的工作效率。特别适合大型测绘项目中复杂地形的处理,涵盖数据准备、核心处理到后期优化的全流程。

weixin_30352645的博客 618

从电商平台到微信私域:构建合规跳转链路的技术实现

在互联网营销与用户增长领域,链接跳转是连接不同平台、引导用户流量的基础技术。其核心原理是通过服务器端路由与参数解析,实现用户请求的接收、处理与重定向。这项技术的价值在于能够突破平台间的生态壁垒,实现流量的合规、可控迁移,尤其适用于跨平台营销、私域沉淀等场景。在实际应用中,常需处理微信环境限制、参数传递与动态内容生成等挑战。本文聚焦于电商平台(如淘宝)到微信生态的跳转需求,详细阐述了如何利用Node.js、Express框架及二维码生成技术,构建一个包含环境检测、参数传递与动态落地页的完整跳转系统,以解决微信

weixin_33889665的博客 323

Vue之动画的实现

当我们的UI界面显示出来后,需要和用户进行交互,即用户点击某个控件,比如是一个按钮,需要跳转到另一个界面的时候,如果直接跳转到另一个界面,功能是实现了,但是未免有些生硬,因为用户体验不是很好,这时就需要动画的润色了,添加一个好的转场动画能让用户使用起来拥有更好的体验,并且动画还可以让一些耗时的任务看起来不那么“耗时”,比如当用户下载一个文件时,假如没有动画,系统一直卡在下载当那个页面(其实系统没有卡住,只是在下载,用户以为卡住了),那么下载完文件后就会直接显示一个下载完成的界面给到用户,用户是很蒙的。但是使

知识应该共享,创造才应收费 3757

Python量化投资入门教程:从零构建你的第一个交易策略

量化投资教程以数学模型和计算机程序实现超额收益,选用Python工具链完成数据获取、策略构建及回测。通过移动平均线交叉策略示例,展示数据预处理、信号生成、收益计算及可视化全流程,结合收益率、最大回撤和夏普比率评估策略,并建议参数优化与策略融合提升稳健性。

ylmx5201314的博客 2454

vue引入鼠标点击效果

1.引入js function clickEffect() { let balls = []; let longPressed = false; let longPress; let multiplier = 0; let width, height; let origin; let normal; let ctx; const colours = ["#F73859", "#14FFEC", "#00E0FF", "#FF99FE",

chen的博客 3万+

电赛综合测评题练习(一)-(与2013年电赛综合测评要求类似)

电赛综合测评题练习 文章目录电赛综合测评题练习前言1. 波形发生器1.1 题目说明1.1.1 可用器件1.1.2 设计要求1.1.3 设计方案论证1.2 仿真电路设计1.2.1 脉冲波发生器电路1.2.1.1 方案介绍1.2.1.2 理论分析与计算1.2.1.3 电路系统设计1.2.1.4 仿真方案与仿真测试结果1.2.2 锯齿波电路1.2.2.1 理论分析与计算1.2.2.2 电路系统设计1.2.2.3 仿真方案与仿真测试结果1.2.3 正弦波I电路1.2.3.1 理论分析与计算1.2.3.2 电路系

daydayup!的博客 3万+

g2o&PCL 四阶多项式拟合

g2o&PCL 四阶多项式拟合

dayuhaitang1的博客 139

使用VUE实现点击事件

2,切片好的图片保存为web所用格式保存到桌面后进行使用。

m0_74294675的博客 2515

[Python从零到壹] 十四.机器学习之分类算法五万字总结全网首发(决策树、KNN、SVM、分类对比实验)

分类(Classification)属于有监督学习(Supervised Learning)中的一类,它是数据挖掘、机器学习和数据科学中一个重要的研究领域。分类模型类似于人类学习的方式,通过对历史数据或训练集的学习得到一个目标函数,再用该目标函数预测新数据集的未知属性。本章主要讲述分类算法基础概念,并结合决策树、KNN、SVM分类算法案例分析各类数据集,从而让读者学会使用Python分类算法分析自己的数据集,研究自己领域的知识,从而创造价值。 19.1 分类 19.1.1 分类模型 与前面讲述的聚类模型类似

杨秀璋的专栏 2万+

鼠标点击实现烟花

鼠标点击出烟花效果

m0_73737249的博客 1129

Allegro172版本如何在联机模式下使用skill文件操作指导

注意:如果下次重新开启Symphony模式的时候可能导致symphony_skill中的文件内容被清空,所以最好将自己常用的skill文件都写到symphony_skill.txt中去,然后做好备份,需要的时候,在开启软件后把文件放到env目录中去。在用Allegeo172版本进行PCB设计的时候,有时会用到Symphony模式进行多人实时在线协同设计,如下图。这个模式设计起来可以提升设计速度,但是也有一个缺陷,就是不能使用skill文件。如下图,当调用skill的时候就会出现如下报错。

weixin_54787054的博客 1586

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

css手机端长摁背景变色,CSS3 悬停渐变背景色/点击扭曲/长按抖动的一组按钮动效...

CSS语言:CSSSCSS确定body {text-align: center;margin: 7rem auto;background: #222;}.btn {-webkit-appearance: none;border: 0;/* styles */outline: 0;position: relative;background: -webkit-linear-gradient(45deg...

weixin_39581739的博客 761

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

css按钮点击放烟花,CSS3 点击时两侧呈现烟花式图形的按钮

CSS语言:CSSSCSS确定@import url(http://fonts.googleapis.com/css?family=Roboto:900);body,html {height: 100%;}body {display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;background: #...

weixin_39736379的博客 255

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

用js实现一个炫酷的烟花效果

我们要理清整个流程的思路。 首先建立一块画布,用于展示烟花的效果,然后就要去思考烟花燃放的流程,我们都知道烟花通常都是先有一份飞上天,然后再分散成很多个小烟花,并且每一个小烟花都有不同的样式以及运动方式。 所有整体思路就是先建立一个div作为我们的大烟花,当大烟花运动到我们鼠标点击的位置的时候,大烟花就会消失,然后就会产生更多的小烟花,并且这些小烟花的运动轨迹样式各不相同。 目录 1.建立一块画布(div)用于展示烟花的效果 2.获取节点 3.先实现大烟花(需要调用随机数方法,随机颜色方法,以及

m0_56616208的博客 1835

图片跑起来的效果

html,body{ height: 100%;}       *{ box-sizing:border-box;}       .imgBox{ transform-style: preserve-3d; position: relative; width:100px; height: 100px; margin:200px auto 0;}       .imgBox img.imgBo

RUYIBIG的博客 483

Qt重写QWidget实现按钮进度条

效果图:核心代码:构造函数设置默认的颜色ProgressWidget::ProgressWidget(QWidget *parent) : QWidget(parent){ setAutoFillBackground(true); m_color.setRgb(173, 119, 67,150); m_backGroundColor.setRgb(77,77,77,5);}...

yu_20501253的博客 1881

css进阶案例练习

实现效果: 点击会有悬停效果 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0">

m0_51045721的博客 189

java列表_java实现列表List

package a;import java.awt.Color;import java.awt.Container;import java.awt.Dimension;import java.awt.Font;import java.awt.Toolkit;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;im...

weixin_35501678的博客 540

博客主题分享

(四处codecpy过来的代码,除了一言是我自己写的。。。) 博客园的主题还是比较自由的。。。 页面定制CSS代码: #myposts .PostList { background: #000; padding: 20px; /* border: 1px solid #dedede; */ margin: 0 0 -1px 0!important; } .day ...

weixin_30552811的博客 132

JS实现鼠标点击爱心特效

!function(e, t, a) { function r() { for (var e = 0; e < s.length; e++) s[e].alpha <= 0 ? (t.body.removeChild(s[e].el), s.splice(e, 1)) : (s[e].y--, s[e].scale += .004, s[e].alpha -=...

Yun 2688

JS实现点击鼠标弹出自定义文字内容效果

之前看到有朋友自己搭建的博客网站,在页面任意位置点击鼠标都会弹出自定义文字,而且内容会不停变化,觉得非常炫酷,今天自己试着来实现一下这个效果。 思路分析 主要是对document添加一个click事件,每次点击会生成一个新标签,这个标签初始位置通过获取click的event事件来获得。之后通过一个定时器setInterval实现缓慢向上的效果,然后用另一个定时器setTimeOut在一段时间后清除掉上一个定时器并且删除添加的新标签。 代码实现 <!DOCTYPE html> <html&g

T型人小付的博客 2055

ClickShow终极指南:让鼠标点击效果惊艳全场

在当今数字化工作环境中,**鼠标点击可视化**已成为提升演示效果和工作效率的关键技术。ClickShow作为一款专业的**鼠标点击特效**工具,通过智能视觉反馈系统,让每一次鼠标操作都充满表现力,特别适合教学演示、工作汇报和日常使用场景。 ## 🎯 为什么需要鼠标点击可视化? 在日常计算机操作中,你是否遇到过这些困扰: - 教学演示时,学生难以追踪鼠标轨迹 - 工作汇报中,重要点击操作被忽略

gitblog_00182的博客 671
上一篇: element -- table 表头、单元格居中显示内容?
下一篇: vue -- 角标的添加
Dark_programmer
博客等级 码龄7年 9073粉丝 307原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值