使用jQuery滑动div,每次都从起点触发

大哥们,帮我看看这个简单的代码有什么逻辑问题还是?

<!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 type="text/css">
        .scroll{
            position: absolute;
        }
        .one{
            display: flex;
            position: relative;
            overflow: hidden;

        }
        .one:hover{
            cursor: pointer;
        }
        .s{
            width: 404px;
            height: 240px;
            display: flex;
            margin:10px 10px 10px 0px;
            box-shadow:0px 0px 8px rgb(187, 182, 182);
            border-radius: 15px;
            background-color:aqua
        }
    </style>
</head>
<body>

    <div class="scroll">
        <div class="one" style="left:0">
            <div class="s" style="background-color:aqua"></div>
            <div class="s" style="background-color:rgb(19, 150, 84)"></div>
            <div class="s" style="background-color:rgb(255, 251, 0)"></div>
            <div class="s" style="background-color:rgb(17, 0, 255)"></div>
            <div class="s" style="background-color:rgb(255, 0, 212)"></div>
            <div class="s" style="background-color:rgb(255, 0, 34)"></div>
            <div class="s" style="background-color:rgb(204, 207, 212)"></div>
        </div>
    </div>

</body>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script type="text/javascript">
    var isMoving=false;
    var  position_mousedown=0;
    var temp=0;
    function getMousePos(event) {
            var e = event || window.event;
            var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft;
            var scrollY = document.documentElement.scrollTop || document.body.scrollTop;
            var x = e.pageX || e.clientX + scrollX;
            var y = e.pageY || e.clientY + scrollY;
            //alert('x: ' + x + '\ny: ' + y);
            return { 'x': x, 'y': y };
   }

    function move(){
        $(".one").mousedown(function(e){
            isMoving=true;
            position_mousedown=e;
        });

        $(".one").mouseup(function(){
            isMoving=false;
        });

        $(".one").mousemove(function(e){
            if(isMoving){
                temp=e.clientX-position_mousedown.clientX;
                $(this).css("transform","translate("+temp+"px,0px)");
            }
        });
    };
    $(document).ready(function(){
        move();
    }); 


</script>


</html>

https://blog.csdn.net/damei2017/article/details/82260994

你的代码中,每次滑动时都是重新计算移动量,这是不合理的,应该将上一次移动的距离记下来,然后在下一次移动时加上上一次移动的距离