检索svg g的子元素

时间:2013-02-21 11:06:03

标签: jquery svg

我正在尝试检索svg g元素的值。以下是我的代码

<div id="chart">
    <svg width="1386" height="186">
    <g transform="translate(0,0)">    
    <g><circle class="node highlight" r="17.603478526018918" style="fill: #008000;" cx="521.2058097619438" cy="67.43023189750437"></circle>
    </g>
    <g><text class="label highlight" dx="22.603478526018918" dy=".35em" transform="translate(521.2058097619438,67.43023189750437)">CNN</text>
    </g>
    </g>
    </svg>
</div>

我想在上面的例子中访问第三个'g'元素值,即'CNN'。我怎么能用jQuery做到这一点。

2 个答案:

答案 0 :(得分:0)

试试这个:

console.log($('#chart').find('g').eq(2).text());

或者这样:

console.log($('#chart').find('text').eq(0).text());

即使是更好的一个:

$('#chart g').find('text').text();

答案 1 :(得分:0)

s = '<div id="chart"><svg width="1386" height="186"><g transform="translate(0,0)"><g><circle class="node highlight" r="17.603478526018918" style="fill: #008000;" cx="521.2058097619438" cy="67.43023189750437"></circle></g><g><text class="label highlight" dx="22.603478526018918" dy=".35em" transform="translate(521.2058097619438,67.43023189750437)">CNN</text></g></g></svg></div>'

$('g:nth-of-type(2)',$(s))