我有一个小项目,我正在研究,并使用jquery的draggable有一个有趣的收容问题:
基本上,我有两个div – 顶部和顶部和一个底部.然后,我有一个第三个div,它是一个.draggable({}),可以拖动以调整顶部和底部div的大小.
– 看看这里:http://jsfiddle.net/Kpt2K/7/
问题是,我无法按照我的意愿来控制拖动.在上面的小提琴中,我将橙色< span> s放在我想要收容的地方开始和结束.
有趣的说明:我尝试做以下事情:
$('#container').innerWrap('<div id='containmentBox' />'); var containerHeight = $('#container').height(); $('#containmentBox').css({'height': containerHeight - 45);
这使得遏制工作适用于底部,但不适用于顶部跨度.所以,我认为我坚持使用遏制:[x1,y1,x2,y2],但还没有完全掌握如何使用它.
看看小提琴,让我知道你可以想出什么来限制可拖动的运动到两个橙色跨度内.
解决方法
containment option允许数组在哪里设置包含它的位置.尝试这个:
var containmentTop = $("#stop-top").position().top; var containmentBottom = $("#stop-bottom").position().top; $('#bar').draggable({axis: 'y',containment : [0,containmentTop,containmentBottom] });