Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在同一容器中拖放_Javascript_Html - Fatal编程技术网

Javascript 在同一容器中拖放

Javascript 在同一容器中拖放,javascript,html,Javascript,Html,我引用了以下代码在同一个容器中拖放; 不能调用拖放函数;请提供一些替代方案 注意:使用Chrome和FireFox浏览器 function drag_start(event) { var style = window.getComputedStyle(event.target, null); event.dataTransfer.setData("text/plain", (parseInt(

我引用了以下代码在同一个容器中拖放;
不能调用拖放函数;请提供一些替代方案 注意:使用Chrome和FireFox浏览器

        function drag_start(event) {
            var style = window.getComputedStyle(event.target, null);
            event.dataTransfer.setData("text/plain",
                    (parseInt(style.getPropertyValue("left"), 10) - event.clientX) + ',' + (parseInt(style.getPropertyValue("top"), 10) - event.clientY));
        }
        function drag_over(event) {
            event.preventDefault();
            return false;
        }
        function drop(event) {
            var offset = event.dataTransfer.getData("text/plain").split(',');
            var dm = document.getElementById('drag_div');
            dm.style.left = (event.clientX + parseInt(offset[0], 10)) + 'px';
            dm.style.top = (event.clientY + parseInt(offset[1], 10)) + 'px';

            event.preventDefault();
        }

        $(document).ready(function () {

            var dm = document.getElementById('drag_div');
            dm.addEventListener('dragstart', drag_start, false);

            document.body.addEventListener('dragover', drag_over, false);
            document.body.addEventListener('drop', drop, false);

        });
尝试此演示:

 <!DOCTYPE HTML>
<html>
<head>
<style>
#div1 {
    width: 350px;
    height: 70px;
    padding: 10px;
    border: 1px solid #aaaaaa;
}
</style>
<script>
function allowDrop(ev) {
    ev.preventDefault();
}

function drag(ev) {
    ev.dataTransfer.setData("text", ev.target.id);
}

function drop(ev) {
    ev.preventDefault();
    var data = ev.dataTransfer.getData("text");
    ev.target.appendChild(document.getElementById(data));
}
</script>
</head>
<body>

<p>Drag the W3Schools image into the rectangle:</p>

<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
<br>

<p id="drag1" draggable="true" ondragstart="drag(event)" width="336" height="69"> Drag me to the box </p>

</body>
</html>

#第一组{
宽度:350px;
高度:70像素;
填充:10px;
边框:1px实心#AAAAA;
}
功能allowDrop(ev){
ev.preventDefault();
}
功能阻力(ev){
ev.dataTransfer.setData(“文本”,ev.target.id);
}
功能下降(ev){
ev.preventDefault();
var data=ev.dataTransfer.getData(“文本”);
ev.target.appendChild(document.getElementById(数据));
}
将图像拖动到矩形中:


将我拖到方框中


“请提供一些替代方案”,因此您未能通过搜索??如何获取投递项目属性id?请详细说明。我没有明白你的问题。根据代码,id=“drag1”被拖放到id=“div1”中;假设有多个项目可供拖动;那么在删除时,我如何获得删除的项目id?试试这个。我又添加了一个拖动项,并将其包含在drop box中。为了进一步增强功能,请根据需要创建拖曳标签,并根据需要扩展drop box的大小。代码::请按照此链接进一步了解。""