我最近在我的网站上添加了一个播放列表功能,用户可以在其中将可用的曲目拖到播放列表中。
使用jQuery UI 1.8,一切都运行良好,直到我注意到一个古怪的行为:可排序的唯一一方是在对它们进行排序时克隆对象。让我解释基本结构,然后我将链接小提琴。
#available-tracks-wrapper
和
#playlist-wrapper
。#available-tracks-wrapper
拖动并放下
进入右边的#playlist-wrapper
。#playlist-wrapper
内的曲目进行排序。问题:
这是我的fiddle。我为丢失的图像等道歉。但是,重现行为所需的元素仍然存在。
我搜索了一些选项或方法,以防止此行为无效。我确实注意到了这一点:
启用一组DOM元素可排序。单击并拖动 元素到列表中的新位置,其他项目将调整 适合。 默认情况下,可排序项目共享可拖动属性。
所以我禁用helper:'clone'
中的#available-tracks-wrapper
,确实删除了克隆行为,但导致其他区域的行为更糟。
接下来我想在启动或停止时创建一个函数来删除前一个元素,但是动态定位会被证明是一个挑战因为this
或event.target
始终是父{{1}而不是元素本身。
谢谢大家看看这个。我想这只是因为我的高通而忽略的东西。