1

我有一个拖放示例,当它被拖放到可拖放的 div 中时,它会将可拖动对象恢复到其原始位置。

我的问题是,当我的可拖动对象上的还原有效时,我可以将对象拖动到页面上的不同位置,我的可拖动对象只有在我将它们放入可放置 div 时才会还原。

无论您将它们拖到页面的哪个位置,我都希望我的可拖动对象恢复原状?

我已经尝试过这个工作但不起作用。

{
revert: 'vaild',
stop: function(){
    $(this).draggable('option','revert','invalid');
}

我的问题是,当我将可拖动对象放入可放置 div 时,我的可拖动对象会还原但不会还原。

  <script>
        $(function() {
        $( "#draggable" ).draggable({ revert: "valid" });
        $( "#draggable1" ).draggable({ revert: "valid" });
        $( "#droppable" ).droppable({
        activeClass: "ui-state-hover",
        hoverClass: "ui-state-active",
        drop: function( event, ui ) {
        var dragElemId = ui.draggable[0].id;
        var imgPath = $('#' + dragElemId).attr("des-image");
        $( this )
            .find( ".drop-image" ).removeAttr("src").attr("src",imgPath);
        }
        });
        });
        </script>
4

1 回答 1

5

revert属性设置为true将导致它们始终还原。

   $( "#draggable" ).draggable({ 
       revert: true
   });
   $( "#draggable1" ).draggable({ 
       revert: true
   });
   $( "#droppable" ).droppable({
        activeClass: "ui-state-hover",
        hoverClass: "ui-state-active",
        drop: function( event, ui ) {
             //ommited for brevity
        }
    });

工作示例:http: //jsfiddle.net/yLuvv/

于 2013-03-19T09:49:47.730 回答