获得我在悬停在可拖动停止事件中的某些类的元素

时间:2015-03-12 10:59:50

标签: jquery jquery-ui jquery-draggable

当我停止移动可拖动并释放鼠标按钮以触发停止功能时,我怎么知道我已经结束/悬停某个.classname的元素?

当我没有超过可放置时,我需要知道这一点,因此我不能使用 droppable 来覆盖函数。

$(availableCommand).**draggable**({
    start: function(evt, ui){

var originalPosition = ui.helper.position();
$(this).data("ui-draggable").originalPosition = originalPosition;

    },
  stop: function(event) { 
    // Only Revert draggable to original position
    // if the draggable is NOT over an element of class .DropMe

 // PSEUDO CODE
 var isHoveringDroppable =  // Is draggable hover over an element of type .DropMe
 if(!isHoveringDroppable)
      {
        // revert draggable
        var draggable = $(this);
        draggable.animate(draggable.data("ui-draggable").originalPosition,"slow");
      }   
  }
});

我使用 jquery top-droppable 插件将完整的codepen发布到我的问题,作为重叠droppables的解决方法:http://codepen.io/anon/pen/WbadbM

2 个答案:

答案 0 :(得分:1)

我现在找到了一个非常好的解决方案:$(element).draggable({revert:function(dropped){return!dropped;},当它没有落在可放置的GREAT上时自动返回拖动!

答案 1 :(得分:0)

使用over事件:

$(".droppable").droppable({
     over: function (event, ui) { 
           var hoveringElement= $(this);
     } 
});