JS实现鼠标移动拖尾


Posted in Javascript onDecember 27, 2020

本文实例为大家分享了JS实现鼠标移动拖尾的具体代码,供大家参考,具体内容如下

JS 代码

function getMousePos(event) {
  var e = event || window.event;
  var mouseInfo = {
    mouseX : e.clientX,
    mouseY : e.clientY
  }
  return mouseInfo;
}
 
function getMouseArt() {
  this.artStyle = {
    position: "fixed",
    top: 0,
    left: 0,
    width: "50px",
    height: "50px",
    "font-size": 0,
    "color": 0,
    "text-transform": 0
  };
  this.init = function(obj) {
    var character = ["你", "真", "的", "爱", "我", "吗", "喜", "欢", "不", "对", "起", "彩", "色", "世", "界", "灰", "?"];
    var font_trans = ["uppercase", "lowercase"];
    this.Alpha = 1;
 
    this.element = document.createElement('div');
    var text = document.createTextNode(character[Math.floor(Math.random() * character.length)]);
    this.element.appendChild(text);
 
    this.addStyle(this.element, this.artStyle);
 
    var offsetV = Math.floor(Math.random() * 60 - 30); // -30 ~ 30
    this.element.style.left = obj.mouseX + offsetV +"px"; // x
    this.element.style.top = obj.mouseY + offsetV +"px"; // y
    this.element.style.fontSize = Math.floor(Math.random() * 20 + 10) + "px";
    this.element.style.color = "hsla("+ Math.floor(Math.random() * 255) + ",100%,50%," + this.Alpha + ")";
    this.element.style.textTransform = font_trans[Math.floor(Math.random() * 2)];
 
    document.body.appendChild(this.element);
  }
  this.addStyle = function(ele, genuine) {
    for (var k in genuine) {
      ele.style[k] = genuine[k];
    }
  }
  this.delElement = function() {
    document.body.removeChild(this.element);
  }
  this.reduceColor = function(win) {
    if (this.Alpha <= 1 && this.Alpha > 0) {
      this.Alpha = this.Alpha - 0.1;
      this.element.style.color = "hsla("+ Math.floor(Math.random() * 255) + ",100%,50%," + this.Alpha + ")";
      console.log(this.Alpha);
     }
    else {
      clearInterval(win);
      this.delElement();
    }
  }
}
 
document.onmousemove = function(event) {
  var obj = getMousePos(event);
  var art = new getMouseArt();
  art.init(obj);
  var win = setInterval(function() {
    art.reduceColor(win);
  }, 30);
}

HTML 代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    body {
      background: black;
    }
  </style>
</head>
<body>
  <script src="mouse.js" type="text/javascript"></script>
</body>
</html>

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

Javascript 相关文章推荐
JS判断是否为数字,是否为整数,是否为浮点数的代码
Apr 24 Javascript
jquery控制listbox中项的移动并排序的实现代码
Sep 28 Javascript
Extjs4 Treegrid 使用心得分享(经验篇)
Jul 01 Javascript
加随机数引入脚本不让浏览器读取缓存
Sep 04 Javascript
jQuery中parent()方法用法实例
Jan 07 Javascript
Jquery UI实现一次拖拽多个选中的元素操作
Dec 01 Javascript
Javascript中document.referrer隐藏来源的方法
Jan 16 Javascript
Angular resolve基础用法详解
Oct 03 Javascript
JavaScript文本特效实例小结【3个示例】
Dec 22 Javascript
浅谈layui 数据表格前后台传值的问题
Sep 12 Javascript
浅谈vue中$bus的使用和涉及到的问题
Jul 28 Javascript
微信小程序实现购物车功能
Nov 18 Javascript
JavaScript实现滚动加载更多
Dec 27 #Javascript
jQuery实现简单轮播图效果
Dec 27 #jQuery
JavaScript实现瀑布流布局的3种方式
Dec 27 #Javascript
Vue实现省市区三级联动
Dec 27 #Vue.js
JavaScript实现通讯录功能
Dec 27 #Javascript
vue3.0自定义指令(drectives)知识点总结
Dec 27 #Vue.js
vue 使用 sortable 实现 el-table 拖拽排序功能
Dec 26 #Vue.js
You might like
php出现Cannot modify header information问题的解决方法大全
2008/04/09 PHP
获取URL文件名后缀
2013/10/24 PHP
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
2019/10/15 PHP
js异或加解密效果代码
2008/06/25 Javascript
为指定元素增加样式的js代码
2009/12/09 Javascript
解决遍历时Array.indexOf产生的性能问题
2012/07/03 Javascript
点击按钮自动加关注的代码(sina微博/QQ空间/人人网/腾讯微博)
2014/01/02 Javascript
22点关于jquery性能优化的建议
2014/05/28 Javascript
JavaScript将字符串转换成字符编码列表的方法
2015/03/19 Javascript
javascript格式化json显示实例分析
2015/04/21 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
2016/01/04 Javascript
如何防止INPUT按回车自动提交表单FORM
2016/12/06 Javascript
jQuery实现的背景颜色渐变动画效果示例
2017/03/24 jQuery
weui框架实现上传、预览和删除图片功能代码
2017/08/24 Javascript
使用3D引擎threeJS实现星空粒子移动效果
2020/09/13 Javascript
react-native android状态栏的实现
2018/06/15 Javascript
Vue 引入AMap高德地图的实现代码
2019/04/29 Javascript
浅谈用VSCode写python的正确姿势
2017/12/16 Python
python定向爬取淘宝商品价格
2018/02/27 Python
浅谈python写入大量文件的问题
2018/11/09 Python
Python numpy中矩阵的基本用法汇总
2019/02/12 Python
python自动发微信监控报警
2019/09/06 Python
Python绘制二维曲线的日常应用详解
2019/12/04 Python
4行Python代码生成图像验证码(2种)
2020/04/07 Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
2020/06/01 Python
pytorch SENet实现案例
2020/06/24 Python
matplotlib 三维图表绘制方法简介
2020/09/20 Python
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
使用phonegap进行提示操作的具体方法
2017/03/30 HTML / CSS
酷瑞网络科技面试题
2012/03/30 面试题
保险公司早会主持词
2014/03/22 职场文书
初中毕业生自我评价
2015/03/02 职场文书
投诉信格式范文
2015/07/02 职场文书
如何用Python搭建gRPC服务
2021/06/30 Python
python装饰器代码解析
2022/03/23 Python