代码之家  ›  专栏  ›  技术社区  ›  Farhat Zaman

更改svg中单个文本属性的颜色,以防出现多个

  •  0
  • Farhat Zaman  · 技术社区  · 6 年前

    我用的是 gauge 在我的角度应用程序中使用图表NPM包,并使用半圆规。我只想更改内标签的颜色。这个SVG是动态的,由DOM中的包生成

    <rg-gauge-chart _ngcontent-yct-c10="" class="gauge-width fyf" _nghost-yct-c12="" ng-reflect-canvas-width="200" ng-reflect-needle-value="65" ng-reflect-central-label="1%" ng-reflect-options="[object Object]" style="fill: red;">
        <div _ngcontent-yct-c12="" class="gauge-chart" style="width: 200px;"><span _ngcontent-yct-c12="">  </span>
            <div _ngcontent-yct-c12="">
                <svg width="200" height="130">
                    <text x="19.25" y="100.6" font-size="13px" font-family="Roboto,Helvetica Neue,sans-serif">24.2%</text>
                    <text x="141.75" y="100.6" font-size="13px" font-family="Roboto,Helvetica Neue,sans-serif">24.0%</text>
                    <text x="89.08" y="85" font-size="19.5px" font-family="Roboto,Helvetica Neue,sans-serif">1%</text>
                </svg>
            </div><span _ngcontent-yct-c12="" class="gauge-chart__label">  </span></div>
    </rg-gauge-chart>
    

    这是打字脚本代码。

    changeGaugeValueContent() {
        const svg = document.getElementsByClassName('fyf');
        for(let obj of svg) {
          obj.style.fill = 'red';
        }
      }
    

    它按预期工作,并将所有文本值的颜色更改为红色。但我想要实现的是,我只想更改SVG中最后一个文本属性的颜色。

    0 回复  |  直到 6 年前
    推荐文章