为什么我不能使用JavaScript直接在Chrome中分配给element.style?

时间:2014-01-02 03:13:51

标签: javascript html css google-chrome

快速提问...出于某种原因,当我在Chrome(或Safari)上使用“li”标签运行以下内容时:

myListElement.style.backgroundColor="red";

有效。然而,当我尝试以下内容时:

myListElement.style="li{background:red;}";

没有。但是,它适用于Firefox。有人知道为什么吗?我已经使用了后一种方法,因为当我执行第一种方法时,它会覆盖:我已经分配给我的元素的悬停样式。否则,我将使用第一种方法。任何帮助表示赞赏。谢谢你们!

2 个答案:

答案 0 :(得分:2)

如果您查看与DOM元素相关联的style属性,您会看到,至少在Chrome中,它实际上是一个CSSStyleDeclaration对象 - 这就是将其更改为字符串的原因不行。其中一个属性是backgroundColor,而 是一个可以简单修改的​​字符串。希望这有帮助!

答案 1 :(得分:1)

如下:

myListElement.setAttribute("style", "background:red;");