为了账号安全,请及时绑定邮箱和手机立即绑定

向元素添加新样式会导致错误?

向元素添加新样式会导致错误?

蝴蝶不菲 2021-11-25 19:15:04
我正在尝试向对象添加新样式,但出现此错误: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 操作或全局样式属性直接添加到它的样式。


查看完整回答
反对 回复 2021-11-25
  • 1 回答
  • 0 关注
  • 168 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信