js实现鼠标点击飘爱心效果


Posted in Javascript onAugust 19, 2020

本文实例为大家分享了js实现鼠标点击飘爱心的具体代码,供大家参考,具体内容如下

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

<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>鼠标点击特效</title>
 <link rel="stylesheet" href="https://at.alicdn.com/t/font_1743249_grf4shm1g3t.css" >
 <style>
  html {
   cursor: pointer;
  }

  h3 {
   text-align: center;
   user-select: none;
  }

  .div-box {
   width: 30px;
   height: 30px;
   font-size: 30px;
   position: absolute;
  }
 </style>
</head>

<body>
 <h3>请点击屏幕查看效果</h3>
 <script>
  window.onclick = function (e) {
   //存储需要的颜色
   let arr = ["red", "yellow", "green", "pink", "blue", "purple", "orangered"];
   //随机产生一个颜色
   let heartNum = Math.floor(Math.random() * arr.length);
   let div = document.createElement("div");
   div.setAttribute("class", "iconfont iconzan div-box");
   div.style.color = arr[heartNum];
   document.body.appendChild(div);
   //获得鼠标的x,y轴的位置,并减去自身宽高的一半,使其能够在爱心的正中心
   let x = e.pageX - div.offsetWidth / 2;
   let y = e.pageY - div.offsetHeight / 2;
   div.style.left = x + "px";
   div.style.top = y + "px";
   //获得0-1的整数
   let num = Math.round(Math.random());
   let timer = setInterval(() => {
    y -= 10;
    if (num === 0) x -= 10;
    else x += 10;
    div.style.left = x + "px";
    div.style.top = y + "px";
    //如果超出屏幕范围,则删除此节点
    if (y < -100) {
     clearInterval(timer);
     div.remove();
    }
   }, 100);
  }
 </script>
</body>

</html>

效果图如下

js实现鼠标点击飘爱心效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在chrome中window.onload事件的一些问题
Mar 01 Javascript
jquery转盘抽奖功能实现
Nov 13 Javascript
jQuery编写网页版2048小游戏
Jan 06 Javascript
js实现时间轴自动排列效果
Mar 09 Javascript
Async Validator 异步验证使用说明
Jul 03 Javascript
angular4模块中给标签添加背景图的实现方法
Sep 15 Javascript
JS实现简易换图时钟功能分析
Jan 04 Javascript
解决vue页面DOM操作不生效的问题
Mar 17 Javascript
Vue子组件向父组件通信与父组件调用子组件中的方法
Jun 22 Javascript
详解Vue-axios 设置请求头问题
Dec 06 Javascript
JavaScript 扩展运算符用法实例小结【基于ES6】
Jun 17 Javascript
JavaScript嵌入百度地图API的最详细方法
Apr 16 Javascript
Vue环境搭建+VSCode+Win10的详细教程
Aug 19 #Javascript
Vue实现导航栏菜单
Aug 19 #Javascript
vue实现tab栏点击高亮效果
Aug 19 #Javascript
封装Vue Element的table表格组件的示例详解
Aug 19 #Javascript
JS实现页面鼠标点击出现图片特效
Aug 19 #Javascript
Vue实现点击导航栏当前标签后变色功能
Aug 19 #Javascript
JS实现悬浮球只在一侧滑动并且是横屏状态下
Aug 19 #Javascript
You might like
echo(),print(),print_r()之间的区别?
2006/11/19 PHP
PHP内核探索:变量存储与类型使用说明
2014/01/30 PHP
php实现水仙花数示例分享
2014/04/03 PHP
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
php带抄送和密件抄送的邮件发送方法
2015/03/20 PHP
PHP预定义超全局数组变量小结
2018/08/20 PHP
PHP中创建和编辑Excel表格的方法
2018/09/13 PHP
Laravel 自定命令以及生成文件的例子
2019/10/23 PHP
json-lib出现There is a cycle in the hierarchy解决办法
2010/02/24 Javascript
javascript 模拟坦克大战游戏(html5版)附源码下载
2014/04/08 Javascript
js实现iframe跨页面调用函数的方法
2014/12/13 Javascript
用Node.js通过sitemap.xml批量抓取美女图片
2015/05/28 Javascript
BootStrap modal模态弹窗使用小结
2016/10/26 Javascript
微信小程序实战之仿android fragment可滑动底部导航栏(4)
2020/04/16 Javascript
微信小程序 地图map实例详解
2017/06/07 Javascript
angular4 如何在全局设置路由跳转动画的方法
2017/08/30 Javascript
浅谈webpack对样式的处理
2018/01/05 Javascript
微信小程序实现多选功能
2018/11/04 Javascript
vue实现的组件兄弟间通信功能示例
2018/12/04 Javascript
JavaScript中window和document用法详解
2020/07/28 Javascript
[05:11]TI9战队采访——VIRTUSPRO
2019/08/22 DOTA
python实现基于两张图片生成圆角图标效果的方法
2015/03/26 Python
Python实用技巧之列表、字典、集合中根据条件筛选数据详解
2018/07/11 Python
PyCharm代码提示忽略大小写设置方法
2018/10/28 Python
Python爬虫设置代理IP(图文)
2018/12/23 Python
Flask框架 CSRF 保护实现方法详解
2019/10/30 Python
python环境下安装opencv库的方法
2020/03/05 Python
一文解决django 2.2与mysql兼容性问题
2020/07/15 Python
Python pip 常用命令汇总
2020/10/19 Python
销售人员个人求职信
2013/09/26 职场文书
教师工作表现自我评价
2015/03/05 职场文书
现役军人家属慰问信
2015/03/24 职场文书
浅谈Redis在直播场景的实践方案
2021/04/27 Redis
用python画城市轮播地图
2021/05/28 Python
nginx实现多geoserver服务的负载均衡
2022/05/15 Servers
html解决浏览器记住密码输入框的问题
2023/05/07 HTML / CSS