gpt4 book ai didi

javascript - 访问嵌入文件的元素

转载 作者:行者123 更新时间:2023-12-02 19:26:19 25 4
gpt4 key购买 nike

我有一个 svg 文件,我正在通过 javascript 访问该文件。像这样

 this.m_svg = new Element('embed');
this.m_svg.setAttribute("src","img/gauge.svg");

我之前内联了 svg,所以我能够访问它的所有元素。但随后它(svg 图像)没有在 safari 上渲染。所以,我就采用了这种方式。图像现在已完美呈现,但是我不确定如何在 javascript 中访问 svg 文件的元素。可以给点建议吗?

将我的 svg 文件代码粘贴到此处:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g name="gauge" width="122px" height="127px">
<image xlink:href="gauging.png" width="122" height="127"/>
<circle id="led" cx="39" cy="76" r="5" style="fill: #999; stroke: none">
<animateColor id="ledAnimation" attributeName="fill" attributeType="css" begin="0s" dur="1s"
values="none;#f88;#f00;#f88;none;" repeatCount="0"/>
</circle>
<g id="needle" transform="rotate(0,62,62)">
<circle cx="62" cy="62" r="4" style="fill: #c00; stroke: none"/>
<rect transform="rotate(-130,62,62)" name="arrow" x="58" y="38" width="8" height="24" style="fill: #c00; stroke: none"/>
<polygon transform="rotate(-130,62,62)" points="58,39,66,39,62,30,58,39" style="fill: #c00; stroke: none"/>
</g>
<text id="value" x="51" y="98" focusable="false" editable="no" style="stroke:none; fill:#fff; font-family: monospace; font-size: 12px"></text>
</g>
</svg>

我需要访问元素“needle”。

PS:我无法在 html 中添加任何内容。一切都必须在 JavaScript 端完成。

最佳答案

我创建了一个示例并将其推送到 git repository 。我使用了您在this question中提供的SVG图像。它运行良好,但有一个问题 - 来自 img/gauge.png 的背景图像未第二次加载。

目前的问题似乎已得到解答,但 SVG 文件中的图像的问题仍然悬而未决。

解决方法是使用 gauge.png 图像作为 div 元素(它是 object 的容器)的背景图像> 元素)并将其从 SVG 中完全删除。

虽然我稍后可能会再次玩它。

关于javascript - 访问嵌入文件的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12014498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com