Roy*_*nto 25 javascript html5 svg
我有以下svg对象,如果我直接放入html页面而不使用代码(静态),它会正确呈现.
但是相同的svg内容如果我使用JavaScript插入我的html页面它没有显示,如果我在firebug中打开它并检查svg并尝试编辑svg标签,它会显示.
可能是什么问题呢
<svg height="100" width="100">
<rect width="100" height="100" style="fill:rgb(0,0,255);stroke-width:1;stroke:rgb(0,0,0)"></rect>
</svg>
Run Code Online (Sandbox Code Playgroud)
我正在使用下面的代码动态添加svg,这里容器将是我的div,它在body下面
viewPort = document.createElementNS('http://www.w3.org/2000/svg','svg');
viewPort.setAttribute('height', 100);
viewPort.setAttribute('width', 100);
container.innerHTML = '';
container.appendChild(viewPort);
Run Code Online (Sandbox Code Playgroud)
在此之后我在使用中添加rect
boardElement = document.createElement('rect');
boardElement.setAttribute('width', '100');
boardElement.setAttribute('height', '100');
boardElement.setAttribute('y', '1');
boardElement.setAttribute('x', '1');
boardElement.setAttribute('style', "fill:rgb(0,0,255);stroke-width:1;stroke:rgb(0,0,0)");
viewPort.appendChild(boardElement);
Run Code Online (Sandbox Code Playgroud)
Lkr*_*ups 37
该元素boardElement应该这样声明
boardElement = document.createElementNS("http://www.w3.org/2000/svg", "rect");