0

下面的代码应该生成 100 个随机矩形。但它不起作用。谁能告诉我我做错了什么??

<html>
<head>
<script type="text/javascript">
function rectan()
{
var svgns = "http://www.w3.org/2000/svg";
for (var i = 0; i < 100; i++) {
    var x = Math.random() * 5000,
        y = Math.random() * 3000;

    var rect = document.createElementNS(svgns, 'rect');
    rect.setAttributeNS(null, 'x', x);
    rect.setAttributeNS(null, 'y', y);
    rect.setAttributeNS(null, 'height', '50');
    rect.setAttributeNS(null, 'width', '50');
    rect.setAttributeNS(null, 'fill', '#'+Math.round(0xffffff * Math.random()).toString(16));
    document.getElementById('svgOne').appendChild(rect);
}
}
</script>
</head>
<body onload="rectan"();">

<svg id="svgOne" xmlns="http://www.w3.org/2000/svg" width="5000" height="3000"> 
            <rect x="50" y="50"
            width="50" height="50"
            fill="black" 
            />
</svg>
</body>
</html>

它所做的只是一个黑色矩形形式的 SVG 部分。我知道我在某个地方犯了错误,但我不知道在哪里。

4

1 回答 1

2

onload 属性中似乎有一个无关紧要的双引号。你要这个...

<body onload="rectan();">
于 2013-05-17T07:36:15.620 回答