我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JavaScript如何实现鼠标拖尾特效

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JavaScript如何实现鼠标拖尾特效

这篇文章主要介绍了JavaScript如何实现鼠标拖尾特效,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

看完这个保证你有手就行,制作各种好看的小尾巴!

JavaScript如何实现鼠标拖尾特效

全部代码如下,看注释可以轻易看懂

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title><style>        #main{        width: auto;height: 1500px;margin: 0;background-color: black;    }</style></head><body>        <div id="main"></div> <script>    //==========鼠标星球尾巴JS代码============    //========函数:获取当前鼠标的坐标=========     function getMousePosition(event) {         var x = 0;//x坐标         var y = 0;//y坐标         //documentElement 返回一个文档的文档元素。         doc = document.documentElement;         //body 返回文档的body元素         body = document.body;         //解决兼容性         if (!event) event = window.event;         //解决鼠标滚轮滚动后与相对坐标的差值         //pageYoffset是Netscape特有         if (window.pageYoffset) {             x = window.pageXOffset;             y = window.pageYOffset;         } else {//其他浏览器鼠标滚动             x = (doc && doc.scrollLeft || body && body.scrollLeft || 0)                 - (doc && doc.clientLeft || body && body.clientLeft || 0);             y = (doc && doc.scrollTop || body && body.scrollTop || 0)                 - (doc && doc.clientTop || body && body.clientTop || 0);         }         //得到的x加上当事件被触发时鼠标指针向对于浏览器页面(或客户区)的水平坐标         x += event.clientX;         //得到的x加上当事件被触发时鼠标指针向对于浏览器页面(或客户区)的垂直坐标         y += event.clientY;         //返回x和y         return {'x': x, 'y': y};     }     //========函数:获取当前鼠标的坐标=========     //=====生成从minNum到maxNum的随机数=====    function randomNum(minNum,maxNum){        switch(arguments.length){            case 1:                return parseInt(Math.random()*minNum+1,10);            case 2:                return parseInt(Math.random()*(maxNum-minNum+1)+minNum,10);            default:                return 0;        }    }    //=====生成从minNum到maxNum的随机数======    //======给整个文档绑定一个鼠标移动事件======    document.onmousemove = function(event){        // 在页面创建一个标签,(这里是创建一个自定义标签styleImg )        var styleImg = document.createElement("div");        //获取随机数1-5,根据随机数来设置标签的样式        var r = randomNum(1,5);        switch (r) {            case 1:                //设置图片的路径,根据不同的路径就可以更改成不同的样式                styleImg.innerHTML="<img class="lazy" data-src='../static/muban/images/xing01.png' style='width: 50px;height: auto;'/>"                break;            case 2:                styleImg.innerHTML="<img class="lazy" data-src='../static/muban/images/xing02.png' style='width: 50px;height: auto;'/>"                break;            case 3:                styleImg.innerHTML="<img class="lazy" data-src='../static/muban/images/xing03.png' style='width: 50px;height: auto;'/>"                break;            case 4:                styleImg.innerHTML="<img class="lazy" data-src='../static/muban/images/xing04.png' style='width: 50px;height: auto;'/>"                break;            case 5:                styleImg.innerHTML="<img class="lazy" data-src='../static/muban/images/xing05.png' style='width: 50px;height: auto;'/>"                break;        }        // 由于要设置动画,设置left 和top,因此,必须要设置定位        styleImg.style.position = 'absolute'        // 设置标签的初始位置,即鼠标的当前位置        var x = getMousePosition(event).x;        var y = getMousePosition(event).y;        // 设置styleImg的坐标    styleImg.style.top = y +"px";        styleImg.style.left = x + "px";        //绑定testDiv为当前鼠标小尾巴生效的区域        var testDiv = document.getElementById("main");        // 将新建的标签加到页面的 body标签中        testDiv.appendChild(styleImg);        // 在文档中有超出的地方就会不显示,所以尽量绑定到页面的div中        // 设置溢出隐藏,为了防止鼠标在移动的过程中会触发上下滚动条        testDiv.style.overflow = 'hidden';        //    var count = 0;    //setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式        var time = setInterval(function(){        // 设置定时器 ,让每一次生成的标签在指定的周期内修改相应的透明度        count += 5;            styleImg.style.opacity = (100-count)/100 ;        }, 30)        // setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。        // 设置延时定时器, 在一定的时间后清除上面的定时器,让创建的标签不再进行变化        setTimeout(function(){            // 使用 clearInterval() 来停止执行setInterval函数            clearInterval(time);            // 删除创建的标签            testDiv.removeChild(styleImg);        },250)    }    </script></body></html>

ps:以上代码参考了多篇不同的文献后自己敲的,没有面向VC写博客哦!

最后把图片素材送给你们吧,只要在上面代码中做简单的修改,便可以实现其他样式的小尾巴 

JavaScript如何实现鼠标拖尾特效

JavaScript如何实现鼠标拖尾特效

JavaScript如何实现鼠标拖尾特效

JavaScript如何实现鼠标拖尾特效

感谢你能够认真阅读完这篇文章,希望小编分享的“JavaScript如何实现鼠标拖尾特效”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JavaScript如何实现鼠标拖尾特效

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

JavaScript如何实现鼠标拖尾特效

这篇文章主要介绍了JavaScript如何实现鼠标拖尾特效,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。看完这个保证你有手就行,制作各种好看的小尾巴!全部代码如下,看注释可以
2023-06-22

怎么用JavaScript实现div的鼠标拖拽效果

这篇文章主要介绍“怎么用JavaScript实现div的鼠标拖拽效果”,在日常操作中,相信很多人在怎么用JavaScript实现div的鼠标拖拽效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Java
2023-06-25

JavaScript利用canvas实现鼠标跟随特效

canvas是一个很神奇的玩意儿,比如画表格、画海报图都要用canvas去做。本文就来利用canvas制作个简单的鼠标跟随特效,快跟随小编一起学习一下吧
2022-11-13

使用javascript如何为鼠标设置特效

本篇文章给大家分享的是有关使用javascript如何为鼠标设置特效,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。JavaScript是什么JS是JavaScript的简称,它
2023-06-14

如何使用纯CSS实现鼠标点击拖拽效果

这篇文章主要介绍“如何使用纯CSS实现鼠标点击拖拽效果”,在日常操作中,相信很多人在如何使用纯CSS实现鼠标点击拖拽效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用纯CSS实现鼠标点击拖拽效果”的疑
2023-07-04

如何使用javascript实现鼠标框的效果

鼠标框是一种常见的交互效果,在网页设计和开发中得到广泛应用。使用 javascript 实现鼠标框不仅可以增强用户体验,还可以为网页添加更多的交互效果。在本文中,我们将介绍如何使用 javascript 实现鼠标框的效果,向大家详细地介绍实现方法和技巧。一、使用原生 javascript 实现鼠标框效果使用原生 javascript 实现鼠标框需要两个关键步骤:鼠标按下时的操作
2023-05-14

JavaScript如何实现环绕鼠标旋转效果

今天就跟大家聊聊有关JavaScript如何实现环绕鼠标旋转效果,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。JavaScript是什么JS是JavaScript的简称,它是一种直译
2023-06-26

如何通过CSS实现鼠标悬停时的特效效果

CSS是一种用于美化和定制网页的样式表语言,它可以使我们的网页更加生动和吸引人。其中,通过CSS实现鼠标悬停时的特效效果是一种常见的方式,可以为网页添加一些互动和动态性。本文将介绍一些常见的悬停特效,并提供相应的代码示例。高亮背景色当鼠标悬
2023-10-21

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录