javascript - 附加子项不能在两个圆圈中工作

标签 javascript jquery html svg

当我添加两个圆圈时,没有任何结果。以下是我的代码。第一个创建的圆圈附加到组中就可以了。但是附加在已创建的圆圈中的下一个小圆圈什么也没显示。我不知道出了什么问题。如有任何建议,我将不胜感激。对不起我的英语。

function drawCirc(x, y, r, id) {

var circ = document.createElementNS(svgURI, 'circle');
circ.setAttributeNS(null, 'cx', x);
circ.setAttributeNS(null, 'cy', y);
circ.setAttributeNS(null, 'r', r);
circ.setAttributeNS(null, 'fill', '#CCFFCC');
circ.setAttributeNS(null, 'stroke', '#6BC1C8');
circ.setAttributeNS(null, 'stroke-width', '5');
circ.setAttribute('id', id);

// to add small circle
var circStart = document.createElementNS(svgURI, 'circle');
circStart.setAttributeNS(null, 'cx', (x-5));
circStart.setAttributeNS(null, 'cy', (y-10));
circStart.setAttributeNS(null, 'r', 8);
circStart.setAttributeNS(null, 'fill', 'blue');
circStart.setAttributeNS(null, 'stroke', '#E6F1DB');
circStart.setAttributeNS(null, 'stroke-width', '2');

document.getElementById(group).appendChild(circ);

document.getElementById(id).appendChild(circStart);}

最佳答案

您不能在 SVG 中嵌套圆形(或任何其他形状)。您需要将它们设为容器的所有子容器,例如 <g><svg>元素。

在您的情况下,您可能希望将代码的最后一行更改为

document.getElementById(group).appendChild(circStart);}

关于javascript - 附加子项不能在两个圆圈中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32863819/

相关文章:

javascript - 编辑器 : Attache "keydown" event after SetData?

javascript - 从 div 中删除所有 jsPlumb 端点

javascript - Keyup 函数不适用于数据表搜索

javascript - 如何使用javascript选择下拉选项并更改其值

javascript - NodeJS 聊天服务器示例代码

javascript - 无法使用 'in' 运算符在未定义中搜索 'backgroundPositionX'

javascript - 如何在媒体查询语法里面使用ng-deep?

jquery - jquery 中的 session 处理

jquery - 将鼠标悬停在图上并更改图标题?

html - 文本输入边框在表单中被截断