jquery 可拖动 - 相对于当前元素大小的包含

jquery dragable - relative containmet to current elemente size

我对包含有一个小问题,我希望它具有与当前元素相对的大小。容器中没有固定数量的元素,它们可以缩放和旋转。应允许元素部分放置在容器外部,至少 10% 的元素应在容器内部。

我尝试使用 $(this) 来获取所选元素的维度,但这似乎与 window 有关。对于右侧和左侧,这应该始终有效,但左侧和顶部仅在所有元素具有相同尺寸的情况下才有效。

containment: [//"#container",
                $("#container").offset().left*0.7,
                $("#container").offset().top*0.2,
                $("#container").width() + $("#container").offset().left*0.95,
                $("#container").height() + $("#container").offset().top*0.9
             ],

这是一个小插曲: example

我使用 $.each 单独设置包含字段。我想你可以在可拖动的 stop 函数上递归调用它自己。

http://plnkr.co/edit/McjFd5CQISlWpBA93BJC?p=preview

$('.ui-draggable').each(function(){
    $elem = $(this);
    var contain = [
          $elem.offset().left,
              $elem.offset().top,
              $elem.width() + $elem.offset().left,
              $elem.height() + $elem.offset().top
        ];
    $elem.draggable({
      containment:contain,
      scroll:false
    })
  })