我正在創建一個內部用戶可以單獨點擊的按鈕表。我需要按鈕才能將背景從白色切換到綠色再切換到紅色,然後再切換到白色....用戶是內部用戶,我可以指定這隻適用於Chrome。我想堅持使用基本的HTML5/CSS3和Javascript,因爲它更具有程序性,我的團隊(我們不是網頁開發人員)更有可能維護它。如何用HTML5和CSS更改按鈕背景顏色3次
按鈕元素似乎不能像文本或其他元素一樣工作。我已經採取代碼來更改其他背景顏色,但當元素是按鈕時它不起作用。
我的2分基本阻塞的問題是:
你如何在onclick() 程序讀取當前的背景顏色,所以我的代碼可以計算下一個顏色?
如何更改Button元素的樣式或類,以便在退出onClick()例程期間或退出onClick()例程時更改背景顏色?
我已經看到,在定義這樣的CSS文件,3種不同顏色風格的例子:
.make-background-white { background-color: white}
.make-background-green { background-color: green}
.make-background-red { background-color: red}
而且我可以用這些當我最初畫的按鈕。但我不知道如何在onClick()例程中「讀取」當前背景顏色,也不能更改顏色。
更多詳情
我從數據庫中讀取找到解決按距離排序商店所有的拉鍊碼。我創建了一個帶有郵編的按鈕表格作爲文本,其範圍可以從40-600個按鈕。背景顏色顯示未分配什麼郵政編碼(白色背景)和分配了哪些郵政編碼(綠色背景)。
有時用戶想要點擊幾個白色郵政編碼來表示他們想要將該代碼分配給商店。
我還希望用戶可以點擊一些幫助器按鈕來自動將郵政編碼分配給30或60或90英里半徑的商店。
我有一個很大的Javascript哈希/關聯數組,使用zip代碼作爲關鍵字,它用於創建按鈕,跟蹤距離,跟蹤哪些郵政編碼被分配或未分配等等。這很簡單。它動態地改變了將我拋棄的按鈕背景。
我後黑客,使一些工作三天管理由使用jQuery與回調是這樣的:
$(".btn").click(function() {
if ($(this).hasClass ('make-background-white') {
$(this).removeClass('make-background-white');
$(this).addClass ('make-background-green');
} else if ($(this).hasClass('make-background-green') {
// Remove green, add red
} else if() {
// Remove red, add white
}
}
這似乎與新的背景和作品觸發按鈕重新抽籤將一個字符串存儲在「class」屬性中,以便以後可以讀取和操作。這是我更直接的Javascript的其餘部分的回調,其他使用「getElementById()」的onClick()例程似乎無法以相同的方式讀取或操作「class」屬性。
任何幫助做Javascript上面的上述將不勝感激。
你能否詳細說明的問題是,究竟是什麼一點點?你寫的代碼會改變按鈕的顏色。我已經把一個小小的演示放在一起,通過點擊另一個按鈕來顯示您所寫的內容並更改按鈕的顏色。 http://jsfiddle.net/CWjWY/1/順便說一下,你的代碼在if語句結尾處缺少''''。 – sachleen