我正在尝试使用SVG生成折线图。一切都很好,除了当我尝试插入圆或其他项目到SVG的形式,由Javascript生成的变量在这个页面上。
我有一些变量y_axis_Max design_x_Value design_y_Value,我在前面页面的JavaScript中给它们赋值了。
例如,下面的代码...要在页面上动态写入文本,请执行以下操作:
<text x="100" y="100" dx="-30"dy="10">
<SCRIPT LANGUAGE="JavaScript">
document.write(""+ y_axis_Max +"")</SCRIPT>
</text>
动态创建圆的代码不起作用:
<circle id="pointB" cx="
<SCRIPT LANGUAGE="JavaScript">
document.write(""+ design_x_Value +"")</SCRIPT>
" cy="
<SCRIPT LANGUAGE="JavaScript">
document.write(""+ design_y_Value +"")</SCRIPT>
" r="3" stroke="black" stroke-width="3" fill="black"/>
显然,正常工作的那个在标记外有JavaScript,而在标记内没有JavaScript的那个。一定有办法做到这一点。
谢谢
发布于 2018-07-24 08:17:25
您可以从JS设置属性:
var y_axis_Max = 100, design_x_Value = 50, design_y_Value = 20;
var text = document.querySelector('text');
text.textContent = y_axis_Max;
var point = document.querySelector('#pointB');
point.setAttribute('cx', design_x_Value);
point.setAttribute('cy', design_y_Value);
<svg viewBox="0 0 300 100">
<text x="10" y="20"></text>
<circle id="pointB" r="3" stroke="black" stroke-width="3" fill="black"/>
</svg>
https://stackoverflow.com/questions/51488577
复制相似问题