【问题标题】:Offset Droppable using Jquery使用 Jquery 偏移 Droppable
【发布时间】:2013-12-05 15:14:11
【问题描述】:

我的可放置区域似乎被可拖动项目的宽度所抵消。这意味着当我尝试将可拖动对象添加到可放置对象时,它会在它实际上不在项目顶部时变为活动状态(在我的图像中,添加新步骤是我的可拖动 div,而新步骤是可放置对象)。如何设置可放置对象的偏移量以考虑可拖动对象的宽度?

这是我尝试过的(不起作用):

 $('.newStep').draggable();
 $('.newStep').draggable('enable');

  $('.stepNode').not('.newStep').droppable({
       create: function(event, ui){
       var off = $(this).offset();
       console.log("off.left: " + off.left);
       off.left += ui.draggable.width()/2;
       ui.draggable.offset(off);
     },
     disabled: false
   });

jsfiddle:

http://jsfiddle.net/jdxA8/1/

【问题讨论】:

    标签: jquery draggable droppable


    【解决方案1】:

    试试这样:

    $( ".drag" ).draggable();
    $( ".drop" ).droppable({
      drop: function( event, ui ) {
        var off = $( this ).offset();
        off.top += 5;
        off.left += 5;
        ui.draggable.offset( off );
      }
    });
    

    http://jsbin.com/iqunod/1/edit

    【讨论】:

    • 谢谢;我试过了,但它似乎根本没有改变偏移量(见上文)。我尝试使用创建和删除事件,但都没有成功。此外,我输入的日志消息从未显示。
    • 我需要你在 jsfiddle 或 jsbin 上发布你当前的问题,以便我尝试修复它。
    • 老实说,我不确定您的示例为什么不起作用。我试图让它工作,但有一些东西是行不通的。尽管如此,我还是创建了一个示例来做您想做的事情:一个可拖动对象,多个可放置对象。看这里,这是我能做的最好的,因为我没有时间jsbin.com/EJuCiTu/1/edit
    猜你喜欢
    • 2013-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-26
    • 1970-01-01
    • 2016-04-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多