请帮忙!我可以将项目排序为隐藏溢出!

时间:2011-01-22 12:23:02

标签: jquery sorting overflow jquery-ui-sortable hidden

This is my site。在左边我有一个播放列表,在一个隐藏溢出的容器内(播放列表是可排序的)。当您从搜索列表中拖动更多歌曲时,播放列表会增长。

问题在于,当您将许多歌曲拖动到播放列表,并且播放列表大于容器时,会出现这样的情况:我可以通过将项目拖动到隐藏区域来对播放列表进行排序。换句话说,我可以将一首歌从播放列表拖到容器下面的区域(播放列表的不可见部分所在的区域),歌曲仍会插入列表中。

以下是截图:

alt text

1 个答案:

答案 0 :(得分:1)

好问题。但是,是的,这将是预期的行为。我只能想到一个问题的'hacky'解决方案,即在你不希望发生丢弃的部分放置一个具有非常高的z-index的不可见div元素。这应该为您的问题提供一个实用的解决方案,但它并不漂亮。

事实上,一个相当不错的解决方案是在拖动动作开始时动态添加该不可见元素,以便阻止用户掉落。拖动停止后,您可以再次将其删除。

<强>更新 好的,所以学习第一次尝试不起作用,我去了jQuery docs。它们指定containment选项,该选项是应包含排序的元素。所以我会说你可以再次做不可见的元素,但这次把它放在你希望能够排序的区域的顶部。然后,在containment选项中指定这个元素。如果这不起作用,我就没有建议;)