zoukankan      html  css  js  c++  java
  • 前端图片拖拽

    http://www.gbtags.com/gb/gbtutorials/448.htm

    上面网址是用html5 的拖拽api实现的,但经测试,手机上不起作用。

    下面是我专门针对移动设备写的触摸拖动效果:

    <!DOCTYPE html>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>    
        <title>可拖动的div</title>
        <style type="text/css">
            *{margin:0;padding:0;}
            #aimObj{
                position:absolute;
                background-color: #39f;
                height:60px;
                width:60px;
                border-radius: 30px;
            }
            #cont{
                position: absolute;
                top:100px;
                left:30px;
                width:400px;
                height:600px;
                background-color:#999;
            }
        </style>
    </head>
    <body>
        <div id="cont">
            <div id="aimObj" draggable="true"></div>
        </div>    
    </body>
    <script type="text/javascript">
        var obj=document.querySelector("#aimObj");
        var ix,iy;
        obj.addEventListener('touchstart',function(event){
            if (event.targetTouches.length == 1) {
                event.preventDefault();
                var touch = event.targetTouches[0];
                //getComputedStyle函数可参考网址:http://blog.sina.com.cn/s/blog_89cd68470101i108.html
                var ox=parseInt(getComputedStyle(this,false)["left"]);
                ox=ox?ox:0;
                var oy=parseInt(getComputedStyle(this,false)["top"]);
                oy=oy?oy:0;
                ix=touch.pageX-parseInt(ox);
                iy=touch.pageY-parseInt(oy);
            }
        },false);
        obj.addEventListener('touchmove',function(event){
             // 如果这个元素的位置内只有一个手指的话
            if (event.targetTouches.length == 1) {
             event.preventDefault();// 阻止浏览器默认事件,重要 
                var touch = event.targetTouches[0];
                // 把元素放在手指所在的位置
                var ax=parseInt(touch.pageX-ix);
                var ay=parseInt(touch.pageY-iy);
                this.style.left = ax+"px";
                this.style.top = ay+"px";
                }
        },false);
    </script>
    </html>

      

  • 相关阅读:
    Jemeter编写脚本(五类常见请求)
    正则表达式-问号的四种用法
    Python正则表达式操作指南(转)
    Python文件和目录操作方法大全(含实例)
    Python os.walk() 方法
    Python文件和流
    Python pip常用指令
    Windows7下配置JMeter安装环境
    postman进行http接口测试
    递归Python文件目录操作
  • 原文地址:https://www.cnblogs.com/muguanglj/p/4898081.html
Copyright © 2011-2022 走看看