Этот код может быть тем, что вы хотите, если я получил то, что вы просите:
http://jsfiddle.net/NsawH/84/
var indexBefore = -1;
function getIndex(itm, list) {
var i;
for (i = 0; i < list.length; i++) {
if (itm[0] === list[i]) break;
}
return i >= list.length ? -1 : i;
}
$('#sortable').sortable({
start: function(event, ui) {
indexBefore = getIndex(ui.item, $('#sortable li'));
},
stop: function(event, ui) {
var indexAfter = getIndex(ui.item,$("#sortable li"));
if (indexBefore==indexAfter) return;
if (indexBefore<indexAfter) {
$($("#div_container div")[indexBefore]).insertAfter(
$($("#div_container div")[indexAfter]));
}
else {
$($("#div_container div")[indexBefore]).insertBefore(
$($("#div_container div")[indexAfter]));
}
}
});
Этот код является переносимым, поскольку он не использует идентификаторы элементов, однако вам следует параметризовать сортируемый селектор, чтобы иметь возможность использовать их в любых двух списках, например. если вы привязываетесь к сортируемому после init.
Код удобен для модификации jQuery dom, поскольку использует индексы селекторов, а не индексы dom узлов. На JSFiddle вы увидите, что я сделал div_container сортируемым, и он синхронизируется со списком.