javascript - 如何放置元素/拖放看板之类的东西/到它的初始位置

标签 javascript html drag-and-drop

我是一个编程新手,遇到了一个问题,如下: 我有一个元素“Item 1”,它不会返回到第一个(“motherland”)ul 列表。

通过调试,我知道当我尝试将其从“进行中”、“完成”或返回“待办事项”拖放时,它仅执行拖动功能 - 没有按应有的方式放置 - 为什么?

来自 html 文件:

<div id="board">
    <div>
        <h1>To do</h1>
        <h1>In progress</h1>
        <h1>Done</h1>
    </div>

    <ul id="todo">
        <li id="item1" draggable="true"ondragstart="drag(event)" ondragover="allowDrop(event)" ondrop="drop(event)">Task 1</li>
        <li id="item2">Task 2</li>
    </ul>

    <ul id="inprogress" ondragover="allowDrop(event)" ondrop="drop(event)">
        <li></li>
        <li></li>
    </ul>


    <ul id="done" ondragover="allowDrop(event)" ondrop="drop(event)">
        <li></li>
        <li></li>
    </ul>


</div>

来自js文件:

function allowDrop(e) {
    e.preventDefault();
    //console.log(allowDrop);
}



function drag(e) {
    e.dataTransfer.setData("text", e.target.id);
    console.log(drag);
}



function drop(e) {
    e.preventDefault();
    var data = e.dataTransfer.getData("text");

    e.target.appendChild(document.getElementById(data));


    console.log(drop);
}

最佳答案

将 ondrop="drop(event)"放在 ul 标签中,而不是 li 标签中。

关于javascript - 如何放置元素/拖放看板之类的东西/到它的初始位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42765986/

相关文章:

swift - 当您从 Finder 拖放文件到应用程序时如何获取文件名

java - android中2个 View 之间的碰撞

Javascript document.cookie = "key=value"追加而不是替换

javascript - 如何将erb页面元素传递给rails中的javascript

javascript - Highcharts 中的反向轴从表中获取数据

html - 混合 html5 应用程序能否从服务器提供 html/css

javascript - VueJS - 如何从方法内的函数更新组件数据?

javascript - 替换滚动、中止滚动、jquery 或 javascript 上的 div

html - 图像堆叠成列而不是行

javascript - HTML5 基本拖放不适用于 FF 中的输入按钮