查找具有unicode字符串作为值的属性

时间:2013-12-18 13:54:14

标签: jquery unicode svg

我需要遍历以下XML树,以便找到unicode=

所在的字形
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
          "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
    <font>
        <glyph unicode="&#xf0c5;"/>
        <glyph unicode="&#xf005;"/>
    </font>
</svg>

如何使用jQuery执行此操作?

修改

也许这不清楚,但我想通过unicode标记下的值来访问字形,因为大多数打印字符最终都会显示在中。

我知道这是工作$('svg').find('glyph[unicode=""]'),但有:

if (cond1) {
    $('svg').find('glyph[unicode=""]');
} else if (cond2) {
    $('svg').find('glyph[unicode=""]');
} else {
    // ...
}

..是你永远不想维持的东西。

1 个答案:

答案 0 :(得分:3)

这样的东西?

<击> $( 'SVG')找到( '字形[unicode的= “&安培;#xf0c5”]')。

<强>更新

我看到DOM在加载后发生了变化,所以你必须在之后搜索,所以试试这个

 $('svg').find('glyph[unicode=""]')

<强>更新

您可以将&amp; #x替换为\ u并使用该选择器

&#xf0c5;==\uf0c5 //hex to Escaped Unicode
&#xf005;==\uf005 

所以字形的选择器将是

if (cond1) {
    $('svg').find('glyph[unicode="\uf0c5"]');
} else if (cond2) {
    $('svg').find('glyph[unicode="\uf005 "]');
} else {
    // ...
}

注意:您无需更新html

DEMO