我有一个问题与jQuery sortables。我正在使用它来开发一个类似iGoogle的仪表板,创建3列。所有3包含可排序的div,并使用connectWith选项彼此连接。
我遇到的问题是尝试将div放在可排序列的底部时;它只是不想发生。它只适用于我拖动它/已经在我拖动到的列表中的最底层的div。
有什么办法可以避免吗?或者可能在每列的底部创建一个固定的虚拟div?对此的任何帮助将不胜感激!
提前致谢。
解决方法
老问题,但也许帮助别人…
填充工作,但改变你的视觉治疗。
另一个解决方案是使用可排序api提供的“容忍”。 “指针”的公差值意味着只要用户光标超过其他元素之一,则该项目可以替换其位置(而不是元素上的一定量的空间,这是无需填充的原因) 。
尝试将其添加到初始化(在我的示例中,我正在垂直排序列表)。
$(this.$el).sortable({ axis: 'y',cursor: 'move',containment: 'parent',tolerance: 'pointer' // this is the important bit });
在这样做之后,应该是非常快乐的。
另外你可以在这里看到jquery文档:http://api.jqueryui.com/sortable/#option-tolerance