从另一个div内部获取div值?

时间:2019-03-15 19:01:30

标签: javascript html

所以我有一个可拖动的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>

如果我将可拖动对象拖动到目标中,那么,如果我仅引用可拖动对象所在的目标,该如何在可拖动对象内部获取值?

1 个答案:

答案 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;
}