我正在尝试向对象添加新样式,但出现此错误:NoModificationAllowedError:不允许对此文档进行修改代码:var button = document.getElementById("button");var buttonComputedStyles = getComputedStyle(button);buttonComputedStyles.setProperty("animation", targetAnimation); // error here是否无法对计算出的样式声明进行编辑?添加样式的推荐位置是什么? button.style.setProperty("animation", value);更新:好的,@jmargolisvt 链接的文档说:返回的样式是一个实时的 CSSStyleDeclaration 对象,它会在元素的样式更改时自动更新。“返回的样式是一个活的对象” - 我不久前读到过,这让我感到困惑。
1 回答
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
从MDN 文档...
返回的样式是一个实时的 CSSStyleDeclaration 对象,它会在元素的样式更改时自动更新。返回的对象与从元素的样式属性返回的对象具有相同的 CSSStyleDeclaration 类型。但是,这两个对象有不同的用途:
getComputedStyle 中的对象是只读的,应该用于检查元素的样式 — 包括由元素或外部样式表设置的样式。
element.style 对象应该用于在该元素上设置样式,或者检查从 JavaScript 操作或全局样式属性直接添加到它的样式。
添加回答
举报
0/150
提交
取消