2013-01-04 123 views
5

我的問題,因爲它遵循:的Javascript DOM style.backgroundColor不能正常工作

我有一塊產生使用document.write一個「新」的文件,並在第一次我寫的網頁的整個標題JavaScript代碼。在那篇文章中,我有一些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"; 
} 

起初我會提醒當前元素的顏色。它總是提醒一個空白的通知。將顏色更改爲紅色並再次單擊該元素後,它會提醒redtd的顏色在瀏覽器中,如果我檢查他們與螢火蟲有background-color: black | white;

我缺少什麼以及如何解決這個問題?我已經意識到,如果我使用style="color: black | white"創建它們時設置了td;它的工作原理,但我不知道他們屬於哪一類。

回答

6

你可以使用目前應用風格window.getComputedStyle - Docs

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