我可以在JavaScript中嵌入svgs吗?

时间:2013-08-01 14:58:06

标签: javascript

我用自己的矢量图形创建了一个专门的JavaScript应用程序。我想托管我自己的可热链接的API来补充这个应用程序,并认为如果我可以直接将矢量图形嵌入到API中它会非常整洁。

我知道可以用字体完成(记住cufon,在google turbo-charged他们的webfonts之前非常好),而且我不需要支持旧版本的浏览器,所以你有什么想法?你会怎么做呢?

2 个答案:

答案 0 :(得分:2)

是的,您可以使用现在标准的<svg>标记将SVG嵌入到HTML中。

不仅如此,你还可以从javascript操纵svg。我使用jquery.svg库。这很简单,也很有趣。

试试这个......

<script type="text/javascript" src="jquery.svg.js"></script>
....

$(function() {
  var div=$("#sample");
  div.svg();
  var svg = div.svg('get');
  svg.load('chart.svg');
  setInterval(function () {
    draw(svg,div.width());
  }, 1000);
});

function draw(svg,w) {
  svg.circle(Math.random()*w, 
             Math.random()*w, 
             Math.random()*(w*.10)+10); 
}

答案 1 :(得分:1)

显然,您可以通过添加包含正确内容的svg标记直接在HTML中嵌入svg张图片。 因此,使用document.createElement从Javascript或JQuery插入这样的元素也是合理的。

[编辑] 在搜索示例时,我发现this other question表明需要完成更多工作,因为涉及名称空间。