一连串跟随鼠标移动的元素

一、一连串跟随鼠标移动的元素

1、css

<style>
     div{width: 10px;height: 10px;background: red;position: absolute;left: 0;top: 0;}
</style>

2、html

<body>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</body>

3、js

<script>
    var adiv = document.querySelectorAll("div");
    document.onmousemove = function(eve){
        var e = eve || window.event;
        for(var i=adiv.length-1;i>0;i--){
            adiv[i].style.left = adiv[i-1].offsetLeft + "px";
            adiv[i].style.top = adiv[i-1].offsetTop + "px";
        }
        adiv[0].style.left = e.pageX + "px";
        adiv[0].style.top = e.pageY + "px";
    }
</script>

二、主逻辑

  • 因为一个元素离开了原来的位置之后,原来的位置就找到不到了
  • 所以,需要先操作最后一个元素,找前一个元素的位置,此时前一个元素还没有开始移动,所以能找到原来的位置
  • 最后再操作第一个元素跟着鼠标走
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容