尝试创建类似于iPhone的类似排序功能。我注意到,当项目滚动到"时,连接列表不会立即检测到可排序的项目。连接列表。
看看这个JSFiddle。您会注意到,当第一个列表中的可排序项目滚动到第二个列表时,不会立即触发over event。您必须先在事件触发前移动鼠标。当您在触发事件之前松开鼠标时,这将成为一个问题,这会将项目保留在第一个列表中。这是一个jQuery错误吗?有什么工作吗?
这是我的javaScript:
$(function () {
$("#sortable1, #sortable2").sortable({
connectWith: ".connectedSortable",
over: function () {
alert("Over");
},
start: function () {
$("#wrapper").animate({
'scrollLeft': '+=330px'
});
},
scroll: false
}).disableSelection();
});
请注意,我确实想使用jquery ui可排序滚动选项。页面应该自动滚动到正确的位置。
非常感谢任何帮助。谢谢!
答案 0 :(得分:0)
您可以等到scroll
动画并将placeholder
放在新sortable
中。像这样:
start: function (e, ui) {
var cur_helper = ui.placeholder
$("#wrapper").animate({
'scrollLeft': '+=330px',
}, function () {
//you place it before equivalent position in sortable1
$('#sortable2 > li').eq(ui.item.index()).before(cur_helper)
});
},