可拖动div:表现得像第二次拖动时的图像

时间:2011-11-10 12:02:13

标签: javascript jquery html firefox drag

我的页面中有一个可拖动的div。在第一次拖动它完美地工作。在第二次拖动它开始工作,但然后div似乎被“捕获”,好像它是一个图像 - 拖动停止,div的“副本”出现,鼠标事件未注册。如果我还不够清楚,那就与这个家伙问题相同:http://www.webdeveloper.com/forum/showthread.php?t=227602

知道可能导致这种情况的原因以及如何克服?

由于

编辑:好的,由于this问题,我找到了答案。为了保存将来的访问者,只需点击dragStart功能即可确保以event.preventDefault()结尾:

// bind dragStart handler to appropriate element:
<script type="text/javascript">
  $("#handle").bind("mousedown", function(e) { dragStart(e) });
</script>

function dragStart(event) {

 // bind mousemove and mouseup handlers to $(document), 
 // get ininitial positions etc

 ...

 // then do this:

 event.preventDefault();

}
哎呀,所有人都很好。

1 个答案:

答案 0 :(得分:2)

@RichardH:另外,请考虑CSS中的以下内容:

#handle {
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}

这将禁用拖动时意外选择元素。