我正在尝试将JQuery UI 排序与droppble创建多个页面用于删除和整理东西。我已经安装了备用沿着演示此博客条目:JQuery UI,组合Sortable with Droppable
http://whit.info/blog/2009/06/06/jquery-ui-combining-sortable-with-droppable/
,这里是一个的jsfiddle:
注意,您可以拖动到箱子排序,连成其他栏目。您也可以单击页面按钮切换页面。我的问题就出在这两个功能结合:
通过使用可放开,我允许用户拖动一个框,一个页面按钮,页面会然后切换,用户可以完成它拖到新显示的页面。问题是,当页面切换时,出现在拖动框下方的第一列没有而不是事件触发。您必须拖动到另一列,然后返回第一列以获取占位符。
我不确定,但我想我需要以某种方式清除事件,或手动触发它们。这个问题似乎源于这样一个事实:拖动的框在显示时位于列上方。
你能帮助解决这个深奥的困境吗?
谢谢!
更新:
所以我一直在考虑这个可能的变通。米歇尔建议开放刷新方法,这确实不能解决问题,但让我思考事件问题。
看起来,当你将鼠标移开然后再回来时,适当的事件就会发生。也许如果我可以手动触发第一列的mouseout事件,重置将允许mouseover事件正确触发。
我尝试这样做:
$(".column:first").trigger('mouseout');
但我不认为这是一样的排序的出事件。也许我应该开火那事件?
+1对于“两难”一词的相当体面的使用。尽管问题有三个或四个方面,但大家都称他/她的问题为“两难”。 – MvanGeest 2010-08-13 19:50:06
没有什么比四肢困境更糟。 :) – Whit 2010-08-13 20:59:04
添加'$('。column')。sortable('refresh');'到'.over'回调的droppable帮助,但它是不一致的。我无法弄清楚如何让可排序的项目始终出现在列的顶部。 – Michal 2010-08-14 00:46:14