我想在單擊時將框從白色更改爲紅色,反之亦然。麻煩一直在實施箱子的顏色。我覺得我非常接近,但是我錯過了一個函數或循環。使用點擊事件處理程序更改元素的顏色
<!DOCTYPE html>
<html onmousedown='event.preventDefault();'>
<head>
<title> Boxes </title>
<meta charset='utf-8'>
<style>
table {
border-spacing: 6px;
border: 1px rgb(#CCC);
margin-top: .5in;
margin-left: 1in;
}
td {
width: 40px; height: 40px;
border: 1px solid black;
cursor: pointer;
}
</style>
在每個TD我想設置背景顏色爲白色,並添加一個Click事件處理程序切換紅色和白色之間的顏色。創建事件處理函數時,我想使用匿名函數,在函數內部關鍵字「this」指向元素本身,所以'this.style.backgroundColor'將是元素的背景顏色。在這裏我想我正在格式化顏色無論錯誤還是不正確。我不確定如何使用「這樣的:函數,該函數
<script>
function colorize(el){
var
r = (255, 0, 0),
w = (255, 255, 255);
if (event.onmousedown) {
r.style.backgroundColor = "255, 0, 0" ;
} else {
w.style.backgroundColor = "255, 255, 255";
}
}
</script>
</head>
<body onload='maketable();'>
<table>
<tbody id='tb'>
<script type="text/javascript">
var rows = 16;
var cols = 16;
var table = document.createElement("table");
table.id = "tb";
for (var r = 0; r < rows; r++) {
var row = document.createElement("tr");
table.appendChild(row);
for (var c = 0; c < cols; c++) {
var cell = document.createElement("td");
cell.addEventListener("onmousedown", colorize);
row.appendChild(cell);
}
}
document.body.appendChild(table);
</script>
</tbody>
</table>
</body>
</html>
你的'maketable'函數在哪裏? –
我不確定如何使用該功能。 – HTMLnoobcs17001