使一个元素对script.aculo.us中的Dragging不太敏感

时间:2011-10-21 19:19:28

标签: javascript draggable scriptaculous

script.aculo.us Draggable过于激烈地触发事件。当用户尝试单击时,当鼠标仅移动1个像素时,它将解释为拖动。

如何为特定组件添加规则:

除非鼠标从按下的位置移动了10个像素,否则不要将其视为拖动事件。

谢谢。

<div id="drag" style="width:100px; height:100px; background:#fff85d; border:1px solid #333;"></div>
<script type="text/javascript">
   new Draggable('drag', { revert: true });
</script>

1 个答案:

答案 0 :(得分:0)

我建议延迟100-200ms的拖拽并摧毁鼠标上的拖拽。这样,如果在延迟期内释放按钮,则不会发生任何事情。

我认为它可以像这样工作(未经测试):

var dd = new Draggable('drag', { revert: true, delay:150 });

document.observe("mouseup", function() {
  dd.destroy() 
});