jQuery UI Draggable - 更改还原位置?

时间:2009-07-15 14:16:10

标签: jquery jquery-ui jquery-ui-draggable

是否可以编辑jQuery UI draggables帮助器的恢复位置?例如,我有用户可以单击并拖动到页面上的组的图标。当用户单击图标并开始拖动时,只要他们继续按住光标,就会在光标下方显示一条帮助消息并跟随光标。如果帮助程序被放入一个组中,它就会消失。如果帮助程序未被放入组中,则使用revert返回其原始位置:“invalid”。我的问题是,我可以编辑帮助者的原始位置吗?它似乎总是回到左边的绝对位置:0和顶部:0但我无法弄清楚如何编辑这些值。我需要将返回位置编辑为左侧大约300px。

1 个答案:

答案 0 :(得分:0)

一旦拖动开始,您可以尝试重新定位可拖动元素,释放时元素将恢复到原始位置然后跳转到新位置 - 我还没弄清楚如何解决这个问题,但这种方法有效

$(document).ready(function(){
 $(".dragMe").draggable({
  helper : 'clone',
  revert : true,
  start: function(e,ui){
   // when starting the drag, reposition the element
   $(this).hide().css({ position: 'relative', left: '-300px', top: 0 });
  },
  stop: function(e,ui){
   $(this).show();
  }
 });
 $("#dropBox").droppable({
  drop: function(e, ui) {
   ui.draggable.appendTo($(this)).show()
    // reset the position of the element to zero (so it fits in the drop box)
    .css({ position: 'relative', left: 0 })
   ui.helper.remove();
  }
 });
})