Jquery UI Draggable对齐边缘

Jan*_*orf 3 jquery jquery-ui draggable

我正在开发一个用户可以自定义自己的仪表板页面的项目.这意味着他们可以将组件拖到页面上并根据需要定位它们.

为了获得一个漂亮的布局页面,我希望组件相互捕捉.此时我正在使用snap:true属性,它将组件放在彼此旁边.但是,我想在它们捕捉之后在组件之间留出一些空间.因此,它必须捕捉到另一个具有5像素间隙的组件,而不是捕捉到另一个组件的确切位置.

有没有办法做到这一点?

Cha*_*nga 5

一些选择可以考虑:

  • 使用2.5像素的填充和透明背景将每个组件包裹在封闭元素(例如div)中,并使这些封闭元素成为可拖动元素.因此,当封闭元素咬合在一起时,您的当前元素将看起来已经拼接在一起,但彼此间隔5个像素

  • 在可拖动项目上订阅"停止"事件,并在捕捉完成后使用它手动将它们重新定位到5像素间隙

  • 设置'droppable'元素以接受'draggable'组件,将它们放置以确保每个组件之间保留5个像素的间隙