7

所以我有一个固定的droppable div在屏幕的右下角。我有一个可拖动的拖拽列表(固定拖拽),但我不希望水平滚动条在拖拽到垃圾附近时出现。我不希望拖动器能够水平滚动。还有其他可拖放的页面可以放在页面中,因此它们必须垂直滚动才能到达它们。Jquery-ui可拖动滚动垂直只有

这是一个jsfiddle的问题。

感谢

回答

9

您可以使用可拖动元素containment选项(doc)。这样,您就可以限制它们移动到BODY元素:

$('.draggable').draggable({ 
    ... 
    containment: 'body', 
    ... 
}); 

DEMO

+0

但我无法将其拖放到可拖放的位置。 – 2012-02-07 16:18:20

+0

当然你可以(或者我不明白这个问题)。主体仍然会滚动其视口,但如果光标位置过低或过低,将不会延伸。 – 2012-02-07 16:20:37

+0

现在的问题是,身体不会一路走到底部。 – 2012-02-07 16:25:08

28

为了只允许垂直拖拽,必须设置的可拖动这样的“轴”属性:

$("selector").draggable({ 
    axis: "y" 
}); 

如果你已经有一个初始化拖动对象,则必须将其设置这种方式:

$("selector").draggable("option", "axis", "y"); 
+0

这不是我的意思。我只希望它能够垂直“滚动”,并且可以水平移动。这个问题已经回答,但感谢您的答案。 – 2012-03-30 12:39:36

+3

这只是我一直在寻找的东西 – prototype 2012-10-05 04:12:45

+0

我一直在寻找这个。谢谢 – softnayr 2017-04-24 19:14:38