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
})
})
我对包含有一个小问题,我希望它具有与当前元素相对的大小。容器中没有固定数量的元素,它们可以缩放和旋转。应允许元素部分放置在容器外部,至少 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
})
})