gpt4 book ai didi

javascript - 如何拖放 div 更改 HTML 5 中的 css left 和 top 属性?

转载 作者:太空宇宙 更新时间:2023-11-04 16:26:35 25 4
gpt4 key购买 nike

我想在 HTML 5 中对 div 执行拖放操作。目标是将 div 移动到主容器中的任何位置。

这是我的 html 代码:

<html>
<head>
<title>Mon document</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<script type="text/javascript" src="dragndrop.js"></script>
</head>

<body ondragstart="dragStart(event);" ondragover="return dragOver(event);" ondrop="return drop(event);">
<div class="box" draggable="true">
Drag me if you can !
</div>
</body>

样式.css:

.box {
position: absolute;
top: 100px;
left: 400px;
color: white;
background-color: #6495ED;
border: 10px solid #6495ED;
-webkit-box-shadow: 4px 4px 6px #999;
box-shadow: 4px 4px 12px #555;
border-radius: 7px;
width: 150px;
height: 150px;
}

body {
background-color:#EEEEEE;
}

和 javascript :

var mouseX;                         // Current mouse X           coordinate
var mouseY; // Current mouse Y coordinate

document.onmousemove = mouseMove;

function dragStart(event) {
event.dataTransfer.effectAllowed = 'move';
event.dataTransfer.setData("Text", event.target.getAttribute('id'));
}

function dragOver(event) {
return false;
}

function drop(event) {
ev = event || window.event;
mouseX = ev.pageX;
mouseY = ev.pageY;

var element = event.dataTransfer.getData("Text");

document.getElementById(element).style.left = mouseX+"px";
document.getElementById(element).style.top = mouseY+"px";

event.stopPropagation();

return false;
}

它不起作用,所以我认为 javascript 函数 drop 有问题。但是我看不到什么(在那之前我从未使用过 js)。

感谢您的帮助。

最佳答案

我会听从这个好的建议,改用 jquery。我在这里找到了我需要的演示和代码:jQuery UI - draggable demo .

关于javascript - 如何拖放 div 更改 HTML 5 中的 css left 和 top 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5402779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com