JavaScript实现一串div跟随鼠标移动效果(幻影效果)

简介: JavaScript实现一串div跟随鼠标移动效果上一篇博文我们说到了利用JavaScript实现div块跟随鼠标移动的效果。现在来讲一个进阶版,实现一串div跟随鼠标移动效果,鼠标幻影效果。如图:在这里插入图片描述HTML代码: <div class="box"></div> <div class="box"></div> <div class="box"></div> <div class="box"></div> <div class="box"></div> <div class="box"></div> <div

JavaScript实现一串div跟随鼠标移动效果




上一篇博文我们说到了利用JavaScript实现div块跟随鼠标移动的效果。现在来讲一个进阶版,实现一串div跟随鼠标移动效果,鼠标幻影效果。如图:


在这里插入图片描述

20200603013338324.gif

HTML代码:



<divclass="box"></div><divclass="box"></div><divclass="box"></div><divclass="box"></div><divclass="box"></div><divclass="box"></div><divclass="box"></div><divclass="box"></div><divclass="box"></div><divclass="box"></div>


CSS代码:



* {
        margin: 0;
        padding: 0;
    }
    .box {
        width: 10px;
        height: 10px;
        /* background: green; */
        position: absolute;
    }
    .box:nth-of-type(n) {
        background: red;
    }
    .box:nth-of-type(2n) {
        background: green;
    }
    .box:nth-of-type(3n) {
        background: yellow;
    }
    .box:nth-of-type(4n) {
        background: blue;
    }
    .box:nth-of-type(5n) {
        background: pink;
    }
    .box:nth-of-type(6n) {
        background: orange;
    }
    .box:nth-of-type(7n) {
        background: skyblue;
    }
    .box:nth-of-type(8n) {
        background: hotpink;
    }
    .box:nth-of-type(9n) {
        background: purple;
    }
    .box:nth-of-type(10n) {
        background: gold;
    }


JS代码:


var aBox = document.getElementsByClassName("box");
    var timer;
    document.onmousemove = function (ev) {
        clearInterval(timer);
        var ev = ev || window.event;
        // 设置一个div块跟随鼠标移动
        aBox[0].style.top = ev.pageY + "px";
        aBox[0].style.left = ev.pageX + "px";
        for (var i = aBox.length - 1; i > 0; i--) {
            aBox[i].style.top = aBox[i - 1].style.top;
            aBox[i].style.left = aBox[i - 1].style.left;
        }
        // 设置定时器  每隔一段时间让后面一个div覆盖前面一个div的位置
        timer=setInterval(function () {
            for (var i = aBox.length - 1; i > 0; i--) {
                aBox[i].style.top = aBox[i - 1].style.top;
                aBox[i].style.left = aBox[i - 1].style.left;
            }
        },10)
    }

视频讲解链接:
https://www.bilibili.com/video/BV13T4y1J7yR/

相关文章
|
27天前
|
JavaScript 前端开发
JavaScript实现鼠标放上去之后高亮显示且隔行换色
JavaScript实现鼠标放上去之后高亮显示且隔行换色
12 0
|
10天前
|
JavaScript 算法
原生JS完成“一对一、一对多”矩形DIV碰撞检测、碰撞检查,通过计算接触面积(重叠覆盖面积)大小来判断接触对象DOM
原生JS完成“一对一、一对多”矩形DIV碰撞检测、碰撞检查,通过计算接触面积(重叠覆盖面积)大小来判断接触对象DOM
|
1月前
|
存储 JSON JavaScript
如何使用 JavaScript 代码创建虚拟鼠标点击事件
如何使用 JavaScript 代码创建虚拟鼠标点击事件
18 0
|
2月前
|
移动开发 前端开发 JavaScript
H5+CSS3+JS逆向前置——5、DIV+CSS百分比布局
H5+CSS3+JS逆向前置——5、DIV+CSS百分比布局
37 0
|
2月前
|
移动开发 前端开发 JavaScript
H5+CSS3+JS逆向前置——4、DIV+CSS绘制旗帜练习
H5+CSS3+JS逆向前置——4、DIV+CSS绘制旗帜练习
19 0
|
3月前
|
JavaScript
原生js实现div跳动效果---很多炫酷效果的基本原理
原生js实现div跳动效果---很多炫酷效果的基本原理
20 0
|
3月前
|
JavaScript 前端开发
原生js与jQuery显示隐藏div的几种方法
原生js与jQuery显示隐藏div的几种方法
36 0
|
3月前
|
JavaScript 前端开发
js小功能--如何实现按住shift拖拽多选div
js小功能--如何实现按住shift拖拽多选div
31 0
|
3月前
|
JavaScript 前端开发 数据安全/隐私保护
JS制作跟随鼠标移动的图片
JS制作跟随鼠标移动的图片
20 0
|
4月前
|
JavaScript
【经典】原生JS实现“用鼠标拖拽(drag)内容DIV”,滚动条对应同步滚动
【经典】原生JS实现“用鼠标拖拽(drag)内容DIV”,滚动条对应同步滚动