在我开始之前是 jsFiddle 链接:http: //jsfiddle.net/SSxdB/5/
和代码:
<!DOCTYPE HTML>
<html>
<head>
<meta charset ="utf-8">
<style type="text/css">
#dragBox {width:336px; height:221px; margin:10px;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));
if (data == "drag1")
{
foodOne();
}
if (data == "drag2")
{
foodTwo();
}
}
function foodOne()
{
alert("You choose Food One");
}
function foodTwo()
{
alert("You choose Food Two");
}
</script>
</head>
<body bgcolor="#333333">
<div div align="center">
<img id="drag1" src="foodOne.jpg" draggable="true" ondragstart="drag(event)" width="336" height="221">
<img id="drag2" src="foodTwo.jpg" draggable="true" ondragstart="drag(event)" width="336" height="221">
<br><br>
<div id="dragBox" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</div>
</body>
</html>
我有两张图片(图片没有显示在 jsFiddle 中,因为链接是本地的,但你明白了)和一个我可以拖动它们的框。问题是,当我将一张图像拖入该图像不再存在的框中时,当我拖动第二张图像时,它会与下拉框一起折叠并移出其原始位置。
我正在努力做到这一点,以便当用户拖动图像时,该图像不会从顶部移除,并且当第二个图像移动时它会执行相同的操作,并且下拉框始终保持在相同的位置图像被拖入。
如果有人可以帮助我,那就太好了!