javascript - 添加样式属性而不删除以前的样式

标签 javascript css

我有 3 个不同的函数来为元素设置特定的样式属性,通过单击 3 个不同的按钮调用,例如:

element.setAttribute("style","fill:#00ffff");
element.setAttribute("style","fill:#ff00ff");
element.setAttribute("style","fill:#ffff00");

然后,我有另一个函数,由第四个按钮调用,更新同一元素的样式。

element.setAttribute("style", "transform:translate(29.5%,0px)";

问题是当它更新它时,由前 3 个函数设置的先前属性被删除,因此按钮 #4 翻译了元素,但元素失去了它的填充。

由于颜色不固定,无法解决

element.setAttribute("style", "transform:translate(29.5%,0px);fill:#ffff00";

我希望有一种添加属性而不是更新属性的方法。 我希望我已经为你们弄清楚了一切,有什么想法吗?

没有库允许解决这个问题

最佳答案

来自 https://www.w3schools.com/jsref/met_element_setattribute.asp :

不好

element.setAttribute("style", "background-color: red;"); 

element.style.backgroundColor = "red"; 

通过选择第二种方式,你只覆盖你需要的东西

关于javascript - 添加样式属性而不删除以前的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56613149/

相关文章:

javascript - Google map 标记和多个类别中的过滤标记

javascript - 异步 promise 没有获得正确的值(value)

javascript - Jquery Unobtrusive 验证不适用于 View 模型列表中第一个之后的项目 - c# MVC 4

javascript - $(element).width() 与其实际像素宽度之间的奇怪差异

javascript - 为什么我应该为 GraphQL 突变响应类型使用接口(interface)?

javascript - 在 JS 中动态设置 div 位置和大小 - 如何使过渡更平滑?

jquery - 在不扭曲形状/阴影的情况下向图形添加文本。 CSS

html - 在页脚元素中 float 其他元素时,如何向页脚添加背景图像?

css - BEM 方法、修饰符和冲突

javascript - RaphaelJs 剪辑路径和剪辑矩形冲突