zoukankan      html  css  js  c++  java
  • 拖拽——带框

    <!DOCTYPE html>

    <html>

     

    <head>

    <meta charset="UTF-8">

    <title></title>

    <style type="text/css">

    #box {

    height: 300px;

    width: 300px;

    background-color: green;

    position: absolute;

    left: 0;

    top: 0;

    }

     

    .border {

    border: 2px dashed red;

    position: absolute;

    }

    </style>

    </head>

     

    <body>

    <div id="box">

     

    </div>

    </body>

    <script type="text/javascript">

    var box = document.getElementById("box");

    var x = 0;

    var y = 0;

    box.onmousedown = function(ev) {

    var oEvent = ev || event;

    x = oEvent.clientX - box.offsetLeft;

    y = oEvent.clientY - box.offsetTop;

    //产生一个新的div,即为拖拽的框

    var div = document.createElement("div");

    div.className = "border";

    div.style.width = box.offsetWidth + "px";

    div.style.height = box.offsetHeight + "px";

    div.style.left = box.offsetLeft + "px";

    div.style.top = box.offsetTop + "px";

    document.body.appendChild(div)

    //鼠标移动的函数

    document.onmousemove = function(ev) {

    var oEvent = ev || event;

     

    var L = oEvent.clientX - x;

    var T = oEvent.clientY - y;

     

    div.style.left = L + "px";

    div.style.top = T + "px";

    }

    //鼠标抬起的函数

    document.onmouseup = function() {

    this.onmousemove = null;

    this.onmouseup = null;

    box.style.left = div.offsetLeft + "px";

    box.style.top = div.offsetTop + "px";

    document.body.removeChild(div);

    }

     

    return false;

     

    }

    </script>

     

    </html>

  • 相关阅读:
    从头认识java-17.4 具体解释同步(2)-具体解释竞争条件
    ProgressBar的indeterminateDrawable属性在安卓6.0上的问题
    Android开源-NineOldAndroids
    面向对象语言的多态性问题
    Android Data Binding代码实践(告别findViewById)(四)
    【c语言】将正数变成相应的负数,将负数变成相应的正数
    Android 消息处理源代码分析(2)
    怎样学习嵌入式软件
    C++ regex
    C++中两个类相互include的问题
  • 原文地址:https://www.cnblogs.com/niuniudashijie/p/6129787.html
Copyright © 2011-2022 走看看