所以我有一个可拖动的HTML div元素:
<div id="server" draggable="true" ondragstart="return dragStart(event)">Server</div>
和目标div:
<div id="target1" ondragenter="return dragEnter(event)" ondrop="return dragDrop(event)" ondragover="return dragOver(event)"></div>
如果我将可拖动对象拖动到目标中,那么,如果我仅引用可拖动对象所在的目标,该如何在可拖动对象内部获取值?
答案 0 :(得分:0)
您可能希望在拖动事件上使用go.mod
方法,在放置事件上使用dataTransfer.setData
方法。这些方法将允许您在元素之间传递数据。
datatransfer.getData
function allowDrop(ev) {
ev.preventDefault();
}
function drag(ev) {
var newText = ev.target.innerText;
newText = "I've been dropped!";
ev.dataTransfer.setData("text", ev.target.id);
ev.dataTransfer.setData("divData", newText);
console.log(ev.target); //available data
}
function drop(ev) {
var dragElemID = ev.dataTransfer.getData("text");
var dragElemData = ev.dataTransfer.getData("divData");
var draggedElem = document.getElementById(dragElemID)
ev.preventDefault();
ev.target.appendChild(draggedElem);
ev.target.children[0].innerText = dragElemData;
}
#div1{
border:1px solid;
width:100px;
height:150px;
}
#drag1{
background-color:lightblue;
width:100px;
height:100px;
}