Javascript 无法返回HTML元素的css属性

Javascript 无法返回HTML元素的css属性,javascript,css,Javascript,Css,HTML中有一个元素:,它的属性通过CSS: #block { background: red; } 如果我想在JavaScript中为某个变量分配CSS中的属性,如下所示: var value = document.getElementById('block').style.background // It doesn't work 如何解决此问题?您可以使用: 您可以使用一行jQuery来实现: var value = $("#block").css("background-

HTML中有一个元素:
,它的属性通过CSS:

#block { 
    background: red;
 }
如果我想在JavaScript中为某个变量分配CSS中的属性,如下所示:

var value = document.getElementById('block').style.background // It doesn't work
如何解决此问题?

您可以使用:


您可以使用一行jQuery来实现:

var value = $("#block").css("background-color");

如果可以在项目中使用jQuery,我建议使用.css()jQuery函数

例如: 设置css

$('#block').css({background:'black'});
获取css:

var cssValues = $('#block').css('background'});
查看有关此的更多信息

您可以尝试以下方法-

var  block = document.getElementById("block");
block.setAttribute("style","background-color: red;");

你忘记了一个
d
。文档不是文档;)顺便说一句:对于颜色,在CSS中使用
background color
,在Javascript中使用
backgroundColor
。它不适用于任何CSS属性
style
对象只包含本地样式-直接在元素上设置的样式。在所有样式表中获得级联的有效样式有点痛苦,并且与(旧的)IE和其他浏览器不同。这是框架可以帮助您的更有用的东西之一。@JacobLutin:那是因为它是通过CSS实现的。请参阅上面Pointy的评论和下面j08691的回答。也请参阅Internet Explorer 8和以下版本。它与问题有何关系?无论何时我们指定背景:;对于元素,它存储为该元素的背景色属性。根据问题,JacobLutin想要提取div#块的属性背景色的值,并将其分配给某个变量。var值=$(“#块”).css(“背景色”);我的意思是问题没有标记为jQuery。问题是无法通过Javascript中的“style”属性获取属性。好的,我知道了。错误地没有关注它。它与这个问题有什么关系?你看到“获取css”部分了吗?我的意思是这个问题没有标记为jQuery。问题是无法通过Javascript中的“style”属性获取属性。明白了,是的,它只适用于“如果您可以在项目上使用jQuery”。有时不同的方法是有用的,我不需要为元素分配属性,我需要在javascript中返回它而不改变属性。
var  block = document.getElementById("block");
block.setAttribute("style","background-color: red;");