如何解决如何更改已设置的 SVG 属性
我必须修改一个艺术家设计的 SVG 元素。属性“fill”和“stroke”已经设置好,唯一的目的是让艺术家在设计时需要看到它。
但是,当我加载 SVG 并尝试更改元素的“填充”和“描边”时,setAttribute("fill","rgb("255,0"))
不会更改颜色
但是,如果我要求艺术家取消设置该元素的 fill
,那么 setAttribute
会起作用。然而,艺术家抱怨说他们无法使用不可见元素,也不想在每次需要编辑 SVG 时记住取消所有填充。
有没有办法以编程方式清理或强制元素的属性允许 setAttribute
工作?
附注。我试图在 w3schools 中创建一个示例代码,但它在那里工作正常。我认为我的问题与 SVG 是一个外部文档这一事实有关,我正在使用 getSVGDocument()
访问它的元素。但我不知道如何创建示例,因为这需要我没有的 Web 服务器。
谢谢!
解决方法
这是一些代码示例,希望你会觉得有用
<svg width="100" height="100">
<circle
id="circle1"
cx="50"
cy="50"
r="40"
stroke="green"
stroke-width="4"
fill="red"
/>
</svg>
<button onclick="circle1.style.fill='yellow';">
Click to change to yellow
</button>
这对我有用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。