Javascript 如何更改或向SVG添加ID?

Javascript 如何更改或向SVG添加ID?,javascript,jquery,dom,raphael,Javascript,Jquery,Dom,Raphael,我使用Raphael 2.0创建了一个SVG,如下所示: <div class="stave"> <svg height="342" version="1.1" width="512" xmlns="http://www.w3.org/2000/svg" style="overflow: hidden; position: relative;" viewBox="0 410 1300 80" preserveAspectRatio="meet"> ........ <

我使用Raphael 2.0创建了一个SVG,如下所示:

<div class="stave">
<svg height="342" version="1.1" width="512" xmlns="http://www.w3.org/2000/svg"
style="overflow: hidden; position: relative;" viewBox="0 410 1300 80"
preserveAspectRatio="meet">
........
</svg>
</div>

........
我只想为svg标记设置一个ID!我怎么做?JQUERY还是RAPHAEL 2.0? 我看到了很多答案,但没有一个适合我

谢谢你的帮助

document.getElementsByTagName('svg')[0].id = 'svg_id';
如果您的页面上只有一个SVG标记,并且在使用Raphael创建标记后调用了它,那么这应该是可行的

如果尚未使用Raphael创建标记,则可以使用如下内容:

<svg id='svg_id'></svg>

当然,还有其他属性。

使用jQuery,您可以使用和

像这样的:()


第一组
第二组
第三组
$('div').css({'font-weight':'bold'});
$('.frame div:nth child(2)').attr(“id”,“newId”);
$('newId').css({'color':'f30'})

当然,在您的情况下,选择器应该是
$('svg')

生成svg的代码。这是整个页面上唯一的SVG标记吗?太好了!!我也是!谢谢,我喜欢!我更喜欢这个,因为我想用jquery来处理大多数事情@麻烦我也喜欢jQuery,但这是一个令人伤心的评论。因为作为一个规则,如果可以的话,我们会使用vanilla JS。请解释你的代码是做什么的,以及为什么它会解决这个问题。只包含代码的答案(即使有效)通常不会帮助OP了解他们的问题。如
paper.canvas
您可以访问正确的SVG

<div class="frame">
    <div>div1</div>
    <div>div2</div>
    <div>div3</div>
</div>
<script type="text/javascript">
    $('div').css({'font-weight':'bold'});
    $('.frame div:nth-child(2)').attr("id","newId");
    $('#newId').css({'color':'#f30'})
</script>
var paper=Raphael(0, 0, 342, 512)
paper.canvas.id='id_svg1'