2011-09-01 45 views
1

我有点卡住了jsfiddle example。当用户拖动正常工作的广场时。但是,当用户在将它拖离原始位置后双击该方块时,我希望它恢复到只有一半(垂直)工作的原始位置。这是不正确的! 任何帮助非常感谢:)双击jQuery Draggable重置位置

+0

您的例子没有做任何事情。请先纠正它 - 乍一看,jQuery中的id与HTML id完全不匹配。 – CashIsClay

+0

拖动一个项目会在div上设置“left”属性,这与“right”冲突。您需要让js设置左侧属性的CSS,或者在dblClick上将其删除。 – CashIsClay

回答

0

你可以做(​​我纠正你的提琴,因为这是完全错误的):这里

jQuery("#drag_item").draggable({containment: '#container'}); 
var position = jQuery("#drag_item").position(); 
//you could also use 
//var position = jQuery("#drag_item").offset(); 

$("#drag_item").dblclick(function() { 



    $('#drag_item').css({ 
     'top': position.top 
    }); 

    $('#drag_item').css({ 
     'position': 'fixed' 
    }); 
    $('#drag_item').css({ 
     'left': position.left 
    }); 
}); 

小提琴http://jsfiddle.net/6kXTP/5/

+0

我认为在这种情况下,他会想使用'offset()'而不是'position()'来找到它相对于文档的位置:http://api.jquery.com/offset/(http: /jsfiddle.net/6kXTP/20/) – Blazemonger

+0

是的,他也可能使用offset() –