• 【JS】原生实现拖拽


    <!DOCTYPE html>
    <html lang="en">
        <head>    
            <meta charset="UTF-8">    
            <meta name="viewport" content="width=device-width, initial-scale=1.0">    
            <title>Document</title>
        </head>
        <body>    
            <!-- <img id="ball" src="https://js.cx/clipart/ball.svg" width = "100px" height = "100px" alt="">
            <object data="https://js.cx/clipart/ball.svg" width="100" height="100" type="image/svg+xml" codebase="http://www.adobe.com/svg/viewer/imstall/" /> -->
            <img id="ball" src = "https://www.baidu.com/img/bd_logo1.png?qua=high&where=super" alt = "logo">    
            <div>helloworld</div>
            <script>       
                const ball=document.querySelector("#ball")       
                ball.onmousedown = function(event) {       
                    let shiftX = event.clientX - ball.getBoundingClientRect().left;       
                    let shiftY = event.clientY - ball.getBoundingClientRect().top;        
                    ball.style.position = 'absolute';        
                    ball.style.zIndex = 1000;        
                    document.body.append(ball);        
                    moveAt(event.pageX, event.pageY);        
                    // 移动现在位于坐标 (pageX, pageY) 上的球        
                    // 将初始的偏移考虑在内        
                    function moveAt(pageX, pageY) {        
                        ball.style.left = pageX - shiftX + 'px';        
                        ball.style.top = pageY - shiftY + 'px';        
                    }        
                    function onMouseMove(event) {        
                        moveAt(event.pageX, event.pageY);        
                    }        
                    // 在 mousemove 事件上移动球        
                    document.addEventListener('mousemove', onMouseMove);        
                    // 放下球,并移除不需要的处理程序        
                    ball.onmouseup = function() {        
                        document.removeEventListener('mousemove', onMouseMove);        
                        ball.onmouseup = null;        
                        };        
                    };        
                    ball.ondragstart = function() {        
                        return false;    
                    };    
            </script>
        </body>
    </html>
    
  • 相关阅读:
    Spring IOC
    MyBatis环境搭建
    Spring AOP
    DWR在Spring中应用
    利用反射自动封装成实体对象
    Spring源码下载
    You need to use a Theme.AppCompat theme (or descendant) with this activity解决方法
    由于未能创建 Microsoft Visual C# 2010 编译器,因此未能打开项目 "xxx" ”的解决方法
    正则表达式
    安卓模拟器里面的cpu/abi里面有AMD、intel x86、mlps应该选择哪个
  • 原文地址:https://www.cnblogs.com/kinologic/p/15093246.html
Copyright © 2020-2023  润新知