zoukankan      html  css  js  c++  java
  • 简易拖拽

    onmousedown:存储距离

    onmousemove:根据距离,计算div最新位置

    问题1:当鼠标移动过快脱离div,此时div不会跟随鼠标移动

    解决:改为document.onmouseover

    问题2:当鼠标移动div超出浏览器可视区范围,此时找不到div

    解决:应判断div是否移动超出可视区范围,若超出,则将div的左边距置为0,右边和顶部底部同理

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4 <meta charset="utf-8">
     5 <script type="text/javascript">
     6 window.onload=function(){
     7     var oDiv1=document.getElementById("div1");
     8     var disX=0;
     9     var disY=0;
    10     oDiv1.onmousedown=function(ev){
    11         oEvent=ev||event;
    12         disX=oEvent.clientX-oDiv1.offsetLeft;
    13         disY=oEvent.clientY-oDiv1.offsetTop;
    14         document.onmousemove=function(ev){
    15             oEvent=ev||event;
    16             var l=oEvent.clientX-disX;
    17             var t=oEvent.clientY-disY;
    18             //判断用户拖拽是否拖出浏览器可视区
    19             if(l<0)
    20                 l=0;
    21             else if(l>document.documentElement.clientWidth-oDiv1.offsetWidth)
    22                 l=document.documentElement.clientWidth-oDiv1.offsetWidth;
    23             if(t<0)
    24                 t=0;
    25             else if(t>document.documentElement.clientHeight-oDiv1.offsetHeight)
    26                 t=document.documentElement.clientHeight-oDiv1.offsetHeight;
    27 
    28             oDiv1.style.left=l+'px';
    29             oDiv1.style.top=t+'px';
    30         };
    31         document.onmouseup=function(){
    32             document.onmousemove='null';
    33             document.onmouseup='null';
    34         }
    35         return false;
    36     };
    37 };
    38 </script>
    39 <style>
    40 
    41 #div1{
    42     width:100px;
    43     height:80px;
    44     background:#ccc;
    45     position:absolute;
    46 }
    47 
    48 </style>
    49 </head>
    50 <body>
    51 <div id="div1"></div>
    52 
    53 </body>
    54 </html>
  • 相关阅读:
    asp.net cookie的操作,写入、读取与操作
    JS控制表格隔行变色
    JS创建select的optgroup
    sitemap文件写法详解及参数说明
    IIS7 URL Rewrite Module Configuration Reference
    Asp.net 中文件的下载
    Context的一些简单运用
    QQ web api
    div下图片自适应解决方法
    C#中文分词算法:ChineseAnalyzer
  • 原文地址:https://www.cnblogs.com/l0520/p/6821007.html
Copyright © 2011-2022 走看看