5

我的问题如下:

我有一段 javascript 代码,它使用生成一个“新”文档document.write,首先我编写了网页的整个标题。在那个头上,我有一些 CSS 代码,如下所示:

<style type='text/css'> 
.black {background-color: black;} 
.white {background-color: #ffffff;} 
td {width:50px; height:50px;} 
</style>

并且 javascript 在正文部分绘制了一个表格。编写代码基本上是两个for绘制棋盘的循环。但这甚至不重要。每个td元素都有一个类blackwhite通过它正确着色。每个td都有一个onclick='changeBg(this)'属性。

这就是问题出现的地方。我无法访问被点击元素的背景颜色。函数如下所示:

function changeBg(element)
{
    alert(element.style.backgroundColor);
    element.style.backgroundColor = "red";
}

起初我提醒当前元素的颜色。它总是提醒空白通知。在我将颜色更改为红色并再次单击元素后,它会发出警报red。's 在浏览器中是彩色的td,如果我用 firebug 检查它们,则有background-color: black | white

我错过了什么以及如何解决这个问题?我已经意识到,如果我td在使用创建它们时设置颜色style="color: black | white";它有效,但我不知道他们属于哪个班级。

4

1 回答 1

6

您可以使用- Docs获取当前应用的样式window.getComputedStyle

function changeBg(element) {
    alert(window.getComputedStyle(element).backgroundColor);
    element.style.backgroundColor = "red";
}
于 2013-01-04T08:59:26.280 回答