这个代码有bug,鼠标移动快一点,鼠标已经没有释放了,而box还是被拖拽的状态,一直在动~怎么解决?

来源:4-2 [DOM事件] QQ面板拖拽效果(下)

meow_meow

2016-03-27 22:37

这个代码有bug,鼠标移动快一点,鼠标已经没有释放了,而box还是被拖拽的状态,一直在动~怎么解决?

写回答 关注

4回答

  • 幽雪孤狐
    2016-06-24 11:33:57

    这个问题我研究了半天,结果发现说到底是CSS样式表中的问题,解决方案就是禁用loginPanel的UserSelect属性,添加如下代码:

    oDrag.style.MozUserSelect = 'none'    //火狐下的禁用方法
    oDrag.style.webkitUserSelect = 'none'   //谷歌和safiar下的禁用方法
    if(document.all){                       //IE下的禁用方法
    oDrag.onselectstart = function () {
    return false
      }
    }

    我这的oDrag是获取loginPanel元素的变量,你改成你自己的就行。把这代码加到移动函数的判断条件之前就行了

    OneMag...

    我放了这段函数后拖曳就不起作用了?

    2017-05-06 11:20:35

    共 1 条回复 >

  • Joy_Strong
    2016-06-12 23:41:01

    同问?

  • 深山小童
    2016-04-13 23:09:47

    嗯,同求,兄台知道了告知我一声哦

  • VivianWalker
    2016-03-28 13:59:07

    在onmouseup事件里把onmousemove事件设为null,同时把自己清除

    document.onmouseup=function(){

          //清除onmousemove

          document.onmousemove=null;

          //把自己的事件也清除

          document.onmouseup=null;

    }

    meow_m...

    恩,谢谢你的回答。这个我有写的,还是不可以。我直接用老师的源代码,也发现有这个bug,当把物体拖到边缘,然后按住鼠标,让鼠标离开窗口区域,然后再放回来的时候,虽然释放了鼠标却还是在跟随鼠标拖拽。

    2016-04-01 19:39:05

    共 1 条回复 >

DOM事件探秘

DOM事件?本课程会通过实例来给小伙伴们讲解如何使用这些事件

99545 学习 · 1197 问题

查看课程

相似问题