javascript - 保留被拖动的元素

标签 javascript jquery html drag-and-drop

我正在创建一个拖动事件,但是当我这样做时,我想保留我试图拖动的元素。

这是我尝试做的。

function drag(ev) {

ev.dataTransfer.setData("text", ev.target.id);
var data = ev.dataTransfer.getData("text");
console.log(document.getElementById(data));
document.getElementById("tareas").append(document.getElementById(data));
}

document.getElementById(data)console.log 中,我得到了这个

<p id="item1" class="text-danger materias" draggable="true" ondragstart="drag(event)">Cambio aceite</p>

但它不会留下来,如果有人能给我一个关于如何保留该元素的想法。 谢谢。 (编辑)添加图像

initial state

我希望该项目保留在最初的位置。 enter image description here

最佳答案

您可以先克隆它,然后将新元素附加到那里,而不是将元素移动到新位置。

例如:将 drag() 中的最后一行更改为:

document.getElementById("tareas").append(document.getElementById(data).cloneNode(true)); 

关于javascript - 保留被拖动的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50607234/

相关文章:

javascript - 选择文件时更新图像

javascript - 如果将带有参数的 react-router 的直接 URL 传递给浏览器,则会出错

php - 将 php 变量传递到 WordPress 查询函数中

html - 如何根据屏幕调整带有图像的div?

javascript - 使用 Knockout.js 将具有嵌套数组的 JS 对象展平为单个 HTML 表格行

javascript - 如何区分刷新(按F5/刷新按钮)和关闭浏览器?

javascript - 在精细 uploader 中动态设置端点

delegates - jQuery 使用委托(delegate)会导致每个元素触发事件 (2 4 8 16 32)

jquery - 为 d3 map 上的点击事件设置颜色

javascript - 通过输入字段将文本添加到 h3/p/span