Javascript 在2个“svg”圆圈内拖放一个图像(来回)

Javascript 在2个“svg”圆圈内拖放一个图像(来回),javascript,html,css,svg,drag-and-drop,Javascript,Html,Css,Svg,Drag And Drop,我正在尝试将一个徽标拖放到2个SVG圆圈中。在我的代码的帮助下,图像被拖入一个圆圈,但不会被拖入另一个圆圈 如何修改,以便在两个圆圈之间拖放图像 功能拖动(ev){ ev.dataTransfer.setData(“文本”,ev.target.id); } 功能允许(ev){ ev.preventDefault(); } 功能下降(ev){ ev.preventDefault(); var data=ev.dataTransfer.getData(“文本”); var img1=documen

我正在尝试
一个
徽标
拖放到2个
SVG圆圈中
。在我的代码的帮助下,图像被拖入一个圆圈,但不会被拖入另一个圆圈

如何修改,以便在两个圆圈之间拖放图像

功能拖动(ev){
ev.dataTransfer.setData(“文本”,ev.target.id);
}
功能允许(ev){
ev.preventDefault();
}
功能下降(ev){
ev.preventDefault();
var data=ev.dataTransfer.getData(“文本”);
var img1=document.getElementById(数据),
imgSrc=img1.getAttribute('src'),
imgw=img1.getAttribute('width')
imgh=img1.getAttribute('height'),
imgX=ev.target.getAttribute('cx')-ev.target.getAttribute('r')+20;
console.log(imgX);
ev.target.parentElement.innerHTML+='';
img1.parentNode.removeChild(img1);
//ev.target.appendChild(document.getElementById(数据));
}

分配1\u HTML\u L2

HTML
draggable
/
ondragstart
等是HTML属性。他们不在SVG工作。因此,您需要使用标准鼠标事件实现拖动

见:


还有许多关于S.O.的问题与在SVG中实现拖动有关。

HTML
draggable
/
ondragstart
等是HTML属性。他们不在SVG工作。因此,您需要使用标准鼠标事件实现拖动

见:


还有许多关于S.O.的其他问题与在SVG中实施拖动有关。

在Paul的帮助下,我找到了答案。确保文件扩展名应在svg中。也可以将其包含在html中


在保罗的帮助下,我找到了答案。确保文件扩展名应在svg中。也可以将其包含在html中


为什么不应用CSS圆圈而不是SVG圆圈?我已经用CSS圆圈完成了。@VSM这是分配问题:)@VSM如果可能的话,你能分享它吗?仍在尝试处理SVG中的拖放操作。如果您需要,我可以在CSS圈中共享该功能。@VSM我已经发布了一个答案。请看一下,让我知道它是否有效。谢谢你对我的宽容。:)为什么不应用CSS圆而不是SVG圆?我已经用CSS圆圈完成了。@VSM这是分配问题:)@VSM如果可能的话,你能分享它吗?仍在尝试处理SVG中的拖放操作。如果您需要,我可以在CSS圈中共享该功能。@VSM我已经发布了一个答案。请看一下,让我知道它是否有效。谢谢你对我的宽容。:)