Javascript 防止已删除的元素掉入已删除的元素

Javascript 防止已删除的元素掉入已删除的元素,javascript,jquery,html,drag-and-drop,Javascript,Jquery,Html,Drag And Drop,那是一口。但是,问题就在这里。我有可以拖放到一个大div中的元素。这些元素是从原始元素克隆而来的。除了用户意外地将拖动的元素放入已删除的元素中之外,所有这些都可以正常工作。我知道这最终会发生,结果是一团糟。我一直在寻找解决办法,但似乎找不到 简单地说,我们需要一个解决方案,防止已删除的元素被删除到已删除的元素中。如果这样做了,被拖动的div就会移动到目标div的底部。我相信有一个简单的解决方案。我不可能是唯一一个有这个问题的人,如果这个问题已经得到了回答。。。我真丢脸 以下是我当前的JS: fu

那是一口。但是,问题就在这里。我有可以拖放到一个大div中的元素。这些元素是从原始元素克隆而来的。除了用户意外地将拖动的元素放入已删除的元素中之外,所有这些都可以正常工作。我知道这最终会发生,结果是一团糟。我一直在寻找解决办法,但似乎找不到

简单地说,我们需要一个解决方案,防止已删除的元素被删除到已删除的元素中。如果这样做了,被拖动的div就会移动到目标div的底部。我相信有一个简单的解决方案。我不可能是唯一一个有这个问题的人,如果这个问题已经得到了回答。。。我真丢脸

以下是我当前的JS:

function allowDrop(ev) {
ev.preventDefault();
}

function drag(ev) {
ev.dataTransfer.setData("div", ev.target.id);
var i = 0;
}

function drop(ev,el) { 
var newId = 'newaccount';

ev.preventDefault();
var data=ev.dataTransfer.getData("div");
var nodeCopy = document.getElementById(data).cloneNode(true);
nodeCopy.id = newId+i; 
nodeCopy.class = 'newaccount';
ev.target.appendChild(nodeCopy);
}

提前谢谢

我遇到了同样的问题,我所做的是,当一个div被删除时,我将其id存储在一个变量中,并将其与上面的元素进行比较,如

$('#'+idvariable).prevAll.each(function(){
$upperid= $(this).attr("id");
if(idvariable == upperid){
//do something
}
});

由于其他代码的原因,它并没有完全解决我的问题,但它可能在您的代码中工作。

我遇到了同样的问题,我所做的是,当删除一个div时,我将其id存储在一个变量中,并将其与上面的元素进行比较,如

$('#'+idvariable).prevAll.each(function(){
$upperid= $(this).attr("id");
if(idvariable == upperid){
//do something
}
});
由于其他代码的原因,它并没有完全解决我的问题,但它可能在您的代码中工作