jquery - 无法在 droppable 上删除 jquery ui helper

标签 jquery drag-and-drop

为什么这段代码不允许我将助手拖放到可拖放区域?

  $(".product").draggable({
    revert: 'invalid',
    cursorAt: { top: -12, left: -20 },
    helper: function(event) {
      return $('<div class="product_helper"></div>');
    }
  });
  $(".droppable").droppable({
    accept: '.product_helper',
    drop: function(event, ui) {
      $(this).append( ui.helper );
    }
  });

是否有可能将助手放到可放置的物体上?

最佳答案

完全可以删除助手的克隆,但是助手本身(如您的示例中)无法删除。

这是一个 jsFiddle 演示删除克隆的助手: http://jsfiddle.net/jKabn/1/

相关代码如下:

  $(".product").draggable({
    revert: 'invalid',
    cursorAt: { top: -12, left: -20 },
    helper: function(event) {
      return $('<div class="helper">Helper</div>');
    }
  });
  $(".droppable").droppable({
    drop: function(event, ui) {
           //clone and remove positioning from the helper element
           var newDiv = $(ui.helper).clone(false)
               .removeClass('ui-draggable-dragging')
               .css({position:'relative', left:0, top:0});  

           $(this).append(newDiv);
    }
  });

在 jquery 中执行 drop 后,助手将被删除。为了保留它,您需要删除可拖动的特定 css 和定位以及克隆元素。在 jsFiddle 中,还有一个删除“draggable”元素的演示(并不是说它与您的问题特别相关,我只是为自己添加它。)

希望有帮助

关于jquery - 无法在 droppable 上删除 jquery ui helper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4660127/

相关文章:

javascript - PHP 中的 JQuery 已检查

javascript - 在 Rails View 中单击元素时如何触发 Controller 中的方法?

javascript - 我可以在自定义事件的 jQuery 实时处理程序中获取可用数据吗?

drag-and-drop - jsTree dnd 事件未触发

javascript - 使用拖放表将记录发送和删除到数据库

jQuery 选择并拖动具有相对和绝对位置的元素

Javascript滑动垂直面板切换

jquery - 如果我知道单元格的行索引和列索引,如何更改 HTML 表格单元格中的属性?

jquery - 在 JQuery UI 上执行一个可拖动 connectToSortable 多个可排序

jquery - Div 在调整大小时向上(并超过)可调整大小的 div