2 m0 37285193 m0_37285193 于 2017.01.08 15:28 提问

为什么在javascript中动态创建的line标签在svg标签中显示不出来
 <html>
    <head>
        <title></title>
    </head>
    <body>
        <svg width="500" height="400">
            <line x1="5" y1="5" x2="250" y2="200" style="stroke:black; stroke-width:1px;" />
        </svg>
        <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
        <script>
            var line  = $('<line x1="5" y1="5" x2="4250" y2="400" style="stroke:black; stroke-width:1px;" />')
            line.appendTo($('svg'))
        </script>
    </body>
</html>

1个回答

m0_37285193
m0_37285193   2017.01.08 15:34

svg是xml文档,html的xhtml文档,两种格式从理论上来讲是不一样的,所以直接用js操作html的语法应用到svg,是不起作用的。即使使用appendChild等语法也不会显示出来。
可以使用innerHTML的做法,将svg字符串拼到你的容器上。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!