iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >JavaScript实现酷炫的鼠标拖尾特效
  • 928
分享到

JavaScript实现酷炫的鼠标拖尾特效

2024-04-02 19:04:59 928人浏览 泡泡鱼
摘要

看完这个保证你有手就行,制作各种好看的小尾巴! 全部代码如下,看注释可以轻易看懂 <!DOCTYPE html> <html lang="en"> &l

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

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


<!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 src='../static/muban/images/xing01.png' style='width: 50px;height: auto;'/>"
                break;
            case 2:
                styleImg.innerHTML="<img src='../static/muban/images/xing02.png' style='width: 50px;height: auto;'/>"
                break;
            case 3:
                styleImg.innerHTML="<img src='../static/muban/images/xing03.png' style='width: 50px;height: auto;'/>"
                break;
            case 4:
                styleImg.innerHTML="<img src='../static/muban/images/xing04.png' style='width: 50px;height: auto;'/>"
                break;
            case 5:
                styleImg.innerHTML="<img 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鼠标拖尾特效内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: JavaScript实现酷炫的鼠标拖尾特效

本文链接: https://www.lsjlt.com/news/161374.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • JavaScript实现酷炫的鼠标拖尾特效
    看完这个保证你有手就行,制作各种好看的小尾巴! 全部代码如下,看注释可以轻易看懂 <!DOCTYPE html> <html lang="en"> &l...
    99+
    2024-04-02
  • javascript实现鼠标拖尾特效
    鼠标特效需要使用定时器setTimeout在固定时间生成节点,删除节点,生成的节点赋予随机的宽高,随机颜色,使每个特效节点都看起来不一样 注意:生成的节点需要设置绝对定位,使其脱离文...
    99+
    2024-04-02
  • JavaScript如何实现鼠标拖尾特效
    这篇文章主要介绍了JavaScript如何实现鼠标拖尾特效,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。看完这个保证你有手就行,制作各种好看的小尾巴!全部代码如下,看注释可以...
    99+
    2023-06-22
  • JavaScript实现鼠标拖拽效果
    本文实例为大家分享了JavaScript实现鼠标拖拽效果的具体代码,供大家参考,具体内容如下 这次的效果图如下: 我认为这个实验的难点是保持盒子和鼠标的相对位置不变,通过鼠标按下和...
    99+
    2024-04-02
  • JavaScript实现div的鼠标拖拽效果
    本文实例为大家分享了JavaScript实现div鼠标拖拽效果的具体代码,供大家参考,具体内容如下 实现原理鼠标按下时根据onmousemove事件来动态获取鼠标坐标位置以此来更新d...
    99+
    2024-04-02
  • JS怎么实现酷炫的烟花特效
    这篇文章主要介绍“JS怎么实现酷炫的烟花特效”,在日常操作中,相信很多人在JS怎么实现酷炫的烟花特效问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JS怎么实现酷炫的烟花特效”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-27
  • 怎么用JavaScript实现div的鼠标拖拽效果
    这篇文章主要介绍“怎么用JavaScript实现div的鼠标拖拽效果”,在日常操作中,相信很多人在怎么用JavaScript实现div的鼠标拖拽效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Java...
    99+
    2023-06-25
  • 使用python tkinter实现各种个样的撩妹鼠标拖尾效果
    目录一、系统拖尾二、文艺型拖尾三、实用型拖尾四、爱心拖尾五、奔跑的火柴人型拖尾六、胡桃摇钱拖尾七、女朋友或者老婆拖尾python-tkinter 实现各种个样的撩妹鼠标拖尾,效果图展...
    99+
    2024-04-02
  • 基于JS实现十种酷炫的网页特效
    目录1、鼠标点击弹出爱心2、鼠标点击弹出文字3、鼠标点击弹出烟花波纹4、鼠标小星星拖尾跟随5、鼠标粒子随心拖尾跟随6、鼠标笑脸跟随+仙女棒+泡泡+雪花+点击烟花效果(自由组合)7、樱...
    99+
    2024-04-02
  • 基于JS怎么实现酷炫的网页特效
    这篇文章主要介绍了基于JS怎么实现酷炫的网页特效的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇基于JS怎么实现酷炫的网页特效文章都会有所收获,下面我们一起来看看吧。1、鼠标点击弹出爱心代码<!DOCTYP...
    99+
    2023-06-30
  • CSS3+JavaScript如何实现炫酷呼吸效果
    这篇文章给大家分享的是有关CSS3+JavaScript如何实现炫酷呼吸效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。用css3动画实现的一个简单炫酷效果,最终的效果图如下:页面结构(index.html):...
    99+
    2023-06-08
  • JavaScript怎么实现登录框鼠标拖拽效果
    本文小编为大家详细介绍“JavaScript怎么实现登录框鼠标拖拽效果”,内容详细,步骤清晰,细节处理妥当,希望这篇“JavaScript怎么实现登录框鼠标拖拽效果”文章能帮助大家解决疑惑,下面跟着小编的思...
    99+
    2024-04-02
  • JavaScript利用canvas实现鼠标跟随特效
    目录前言创建canvas画布定义鼠标 x / y初始化canvas画箭头循环动画鼠标事件前言 canvas是一个很神奇的玩意儿,比如画表格、画海报图都要用canvas去做,前几天有用...
    99+
    2022-11-13
    JavaScript canvas鼠标跟随特效 JavaScript canvas鼠标跟随 JavaScript 鼠标跟随
  • 使用纯CSS实现炫酷的背景渐变特效
    随着前端技术的快速发展,网页设计越来越注重细节和用户体验。背景渐变特效是一种常见且常用的技术,可以为网页增加一种炫酷的视觉效果,提升用户的浏览体验。本文将介绍如何使用纯CSS实现炫酷的背景渐变特效,包括具体的代码示例。首先,我们需要创建一个...
    99+
    2023-10-21
    炫酷 纯CSS 背景渐变
  • JavaScript+Canvas实现酷炫的粒子和流星效果
    目录一:粒子效果二:流星效果一:粒子效果 <html> <head> <meta charset="utf-8"> <title&...
    99+
    2023-01-31
    JavaScript实现粒子效果 JavaScript实现流星效果 JavaScript 粒子 JavaScript 流星
  • 如何使用JS实现酷炫代码雨特效
    这篇“如何使用JS实现酷炫代码雨特效”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何使用JS实现酷炫代码雨特效”文章吧。效...
    99+
    2023-07-04
  • js实现炫酷的烟花效果
    本文实例为大家分享了js实现炫酷的烟花效果的具体代码,供大家参考,具体内容如下 我们要理清整个流程的思路。 首先建立一块画布,用于展示烟花的效果,然后就要去思考烟花燃放的流程,我们都...
    99+
    2024-04-02
  • 怎么用CSS3实现炫酷loading加载动画特效
    本篇内容主要讲解“怎么用CSS3实现炫酷loading加载动画特效”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用CSS3实现炫酷loading加载动画特效...
    99+
    2024-04-02
  • JavaScript利用canvas实现炫酷的碎片切图效果
    目录前言需求分析实现过程坐标系切割绘制切割&渲染动画前言 今天分享一个炫酷的碎片式切图效果,这个其实在自己的之前的博客上有实现过,本人觉得这个效果还是挺炫酷的,这次还是用我们...
    99+
    2022-11-13
    JavaScript canvas碎片切图效果 JavaScript canvas 碎片切图 JavaScript canvas 切图
  • 怎么用纯css3实现炫酷的动画背画特效
    本篇内容介绍了“怎么用纯css3实现炫酷的动画背画特效”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  之...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作