2012-03-19 91 views
1

一些样式领域是否有一个原因,我可以这样做:无法访问CSS从JavaScript

document.getElementById('gridID').style.background='blue'; 

但是当我试试这个:

document.getElementById('gridID').style.background-color='blue'; 

抛出这个:

Uncaught ReferenceError: Invalid left-hand side in assignment 

我需要访问backgroundPosition和其他一些东西,他们只是不工作。它们不会出现在Xcode的自动提示,当我键入当我尝试他们反正他们不工作。有什么想法吗?令我惊讶的是,我还没有在Google上发现类似的问题。

感谢, 切特。

+0

这可能是值得指出的是,gridID是一个div的ID。 – Chet 2012-03-19 03:31:22

回答

4

的JavaScript标识符不能包含-秒。

相反,使用驼峰:

document.getElementById('gridID').style.backgroundColor='blue'; 
+1

事实并非如此,实际上是 - 'myObject的[“背景色”]'是完全有效的。但是你不能在点符号中使用'-',因为它被解释为一个负号。 – nrabinowitz 2012-03-19 03:33:15

+0

@nrabinowitz:的确,虽然这实际上不会做任何事情。澄清。 – SLaks 2012-03-19 03:34:45

1

尝试:

document.getElementById('gridID').style.backgroundColor='blue'; 

对于具有多个单词的风格(如background-color)JS使用camelCased名称,而不是dash-separated名,