Что то с рассчетом неправильно - другой див ведет себя очень странно
var oldLeft, oldTop;
$( "div" ).draggable({
start: function(event, ui) {
oldLeft=ui.offset.left;
oldTop=ui.offset.top;
},
drag: function( event, ui) {
var left=ui.offset.left-oldLeft;
var top=ui.offset.left-oldTop;
$("div").eq(0).offset( { left:$(this).offset().left+left, top:$(this).offset().top+top } );
oldLeft=ui.offset.left;
oldTop=ui.offset.top;
},
stop: function() {
// что то при окончании перемещения
}
});