javascript - 将项目拖出可放置区域时将其移除

标签 javascript jquery

我有 2 个盒子,用户可以在其中放置元素。你可以测试一下here 。 这就是我的可放置区域的样子:

$(".projLeader ol, .projChecker ol").droppable({ 
tolerance: 'pointer', 
hoverClass: 'highlight',
    drop: function(ev, ui)
    {
         var zz = ui.draggable.text()
         var xyz = itm.includes(zz);

          var item = ui.draggable;
          if (!ui.draggable.closest('.placeholder').length) item = item.clone().draggable();// if item was dragged from the source list - clone it
          //this.innerHTML = '';                                                                                // clean the placeholder
          item.addClass('dropClass').appendTo(this); 
          // append item to placeholder   
          //add to array
          itm.push(zz);
          var n = $(this).closest("div.proc").find(".dropClass").length;
          $(this).closest("div.proc").find("h6").text("Items Dropped: " + n + ".");


    }
});

问题是当我拖出元素并将其留在可放置区域之外时它仍然在那里,如何使其消失或返回到原来的可放置区域。我的意思是,如果用户将其拖出并将其留在可放置区域之外,则项目应该返回可放置区域。当我将项目从 box1 拖动到 box2 时,我遇到了另一个问题,它重复而不是在 box2 内。如何修复?感谢您的帮助

最佳答案

如果您想删除拖出可放置区域的元素,请尝试此代码

   $('#someID').droppable({
   out: function(event, ui) {
      $(ui.draggable).remove();
    }
   });

或者检查这个问题Remove Item On Drop

关于javascript - 将项目拖出可放置区域时将其移除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40478072/

相关文章:

javascript - 从隐藏表单提交按钮刷新页面

javascript - 选择开始时是否有一个 js 事件被触发?

javascript - 调用 css 属性 [for ex. : element. 样式.填充]

jquery - 向下滑动菜单,但不会移动其他所有内容

javascript - 单击更改所有元素的数据状态

javascript - ng-show之后如何执行函数?

javascript - 在深度嵌套的节点模块中消除应用程序中的重复库

javascript - ajax .load 调用后执行 javascript 时遇到问题

javascript - JQuery悬停事件处理程序运行太多次

javascript - 通过包含字符串的变量设置对象不起作用