2011-10-09 49 views
1

我希望使用jqueryUI的可拖动小部件,但限制该对象,以便它绑定到浏览器的窗口的顶部,左侧和右侧。自定义const jurerryUI可拖拽

但是,我想让对象能够拖动到窗口下方,直到只有30个像素的对象可见。在那一点上,我希望它不能再拖下去。所以,我希望对象的至少30个像素始终可见,因此仍然可以轻松地拖回到视图中。

是否可以使用插件在约束上定义此类型?如果是的话,它是如何完成的?

回答

2

可拖动的小部件有一个containment选项,可用于限制拖动元素可以拖动的限制。该选项可以取的值的数组,所以这样的事情应该做的伎俩:

$("#example").draggable({ 
    containment: [0, 0, document.width, document.height - 70] 
}); 

这里是上面的working example。我已从document.height中减去70,因为示例中的可拖动元素高为100px

+0

这似乎是正确的原则,但在使用FF7的jsFiddle中,我似乎能够无限期地向右/向下拖动。 –

+0

你必须寻找一种跨浏览器的方式来获取文档的宽度和高度。我的答案中的代码在Chrome中进行了测试,并且运行良好,但我不能100%确定如何在没有查看的情况下在所有浏览器中获取文档宽度/高度。 –