JS实现鼠标拖尾特效的方法及代码是什么
Admin 2022-05-30 群英技术资讯 639 次浏览
本文实例为大家分享了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>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
首先了解一下 Map再来了解一下 Set总结Map和Set的区别结语:首先了解一下 MapMap 是一组键值对的结构,和 JSON 对象类似。(1) Map数据结构如下这里我们可以看到的是Map的数
这篇文章主要介绍了js数组的 entries() 获取迭代方法,entries() 方法返回一个数组的迭代对象,该对象包含数组的键值对 (key/value)。下面来详细介绍该neural,需要的朋友可以参考一下
Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源,这篇文章主要介绍了JavaScript中Webpack的使用,需要的朋友可以参考下
用jQuery怎样验证输入是不是数字?在登录注册页面,我们通常需要对输入验证,那么我们怎样知道输入的是不是数字呢?下文给大家分享一个简单的验证数字示例,有一定参考价值,需要的朋友可以参考看看。
假设是使用nodejs+express3这个经典的组合。那么有一种非常方面的处理回调函数异常的方法:1.安装模块:express-domain-middleware2.增加例如以下的代码:app.use(require('express-domain-middleware'));app.use(functionerrorHandler(err,req,res,next){
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008