gpt4 book ai didi

javascript - ev.target.id 不返回元素 id

转载 作者:行者123 更新时间:2023-11-29 23:07:08 26 4
gpt4 key购买 nike

问题和解决方案是什么?我在这里找不到任何错误

这是落点:

<div class="drophere" id="drophere_215" ondrop="drop(event)" ondragover="allowDrop(event)">
<img src="http://static.myface.photos/imagedynamically.aspx?image=/images/uploads/215.jpg" />
</div>

这是拖动点:

<span class="draghere" id="draghere_215" draggable="true" ondragstart="drag(event)">
<span>Georgia</span>
</span>

这是js代码:

<script type="text/javascript">

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");
var shortData = data.replace('draghere_','');
var dropElement = ev.target.id;

if(dropElement.indexOf(shortData) !== -1){
ev.target.appendChild(document.getElementById(data));
document.getElementById(ev.target.id).remove();
}
}

</script>

最佳答案

确保丢弃的目标是父级 <div>而不是 <img>元素:

   function drop(ev) {
ev.preventDefault();
var data = ev.dataTransfer.getData("text");
var shortData = data.replace('draghere_','');
var dropElement = ev.target;
if(ev.target.tagName=="IMG")
dropElement = $(ev.target).closest('div')[0];
if(dropElement.id.indexOf(shortData) !== -1){
dropElement.appendChild(document.getElementById(data));
document.getElementById(dropElement.id).remove();
}
}

关于javascript - ev.target.id 不返回元素 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54497762/

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