【发布时间】:2020-01-18 01:46:34
【问题描述】:
目前我的 javascript 是这样的:
var svgns = "http://www.w3.org/2000/svg";
for (var i = 0; i < 100; i++) {
var x = (Math.floor(Math.random() * 100) + 1)
var rect = document.createElementNS(svgns, 'rect');
rect.setAttributeNS(null, 'height', x);
rect.setAttributeNS(null, 'width', x);
rect.setAttributeNS(null, 'stroke-width', '5')
rect.setAttributeNS(null, 'fill', 'red');
rect.setAttributeNS(null, 'stroke', 'black');
document.getElementById('svgSquare').appendChild(rect);
}
我的 HTML 是这样的:
<svg id="svgSquare"></svg>
这段代码显示了我想要的正方形的数量,但是它将它们堆叠在一起,它们都从同一点开始。如何获取由此 for 循环生成的随机方块并以堆叠的降序显示它们。目前不确定该去哪里,也不确定我是否问对了问题。
【问题讨论】:
-
您可以将矩形保存在一个数组中并对数组进行排序。创建一个对象类 rect 可能很有用
标签: javascript for-loop svg random