javascript - 是否可以在 svg 中定位具有使用 javascript 设置的填充属性的特定路径?
问题描述
大家好,我有一个页面,我在其中注入了一些 svg 元素,它们看起来像这样:
<svg>
<path fill="#FFFFFF" d='....'></path>
<path d='....'></path>
<path d='....'></path>
<path d='....'></path>
</svg>
我无法更改使用 javascript 库注入的 svg 文件,并且我想动态更改它们的背景颜色,有没有办法针对将填充属性设置为某些东西的唯一路径?
解决方案
你可以使用 hasAttribute 元素是否有特定的
document.querySelectorAll('.svg path').map( o=>
if(!o.hasAttribute('fill')) {
o.setAttribute('fill', '#eee')
}
);
推荐阅读
- sympy - Python 包 sympy.physics.units 的合理用例是什么?
- java - 正则表达式匹配三个非连续数字,其中数字需要为 0 或 1
- reactjs - 材质 UI ListItemSecondaryAction 在 ListItem 中垂直对齐
- python - 如何在给定包含字典的列表列表的情况下找到交集
- olap - 从 CSV 文件创建多个 Pinot 段(Apache Pinot 数据摄取)
- laravel - 我正在尝试从不存在的数据库中删除我的记录。并更新我存在的记录。使用 laravel
- vuejs2 - VueJs 组件的 Prop 相关计算属性对对象数组 Prop 更改没有反应
- reactjs - 模拟更改输入类型 = 文件后不调用我的模拟函数
- python - 如何向熊猫数据透视表添加新索引?
- elasticsearch - 如何使用自定义转换 Spring-data-elasticsearch