Javascript 如何设置表格的样式,以便表格中的特定框在单击时更改颜色?
当我单击此表中的元素时,如何使其颜色从背景色更改为红色并恢复为默认颜色Javascript 如何设置表格的样式,以便表格中的特定框在单击时更改颜色?,javascript,html,css,Javascript,Html,Css,当我单击此表中的元素时,如何使其颜色从背景色更改为红色并恢复为默认颜色 <table align="center" style="height: 355px;" width="664" border="3px"> <tbody> <tr> <td style="width: 94px;">25</td> <td style="width: 94px;">26</td>
<table align="center" style="height: 355px;" width="664" border="3px">
<tbody>
<tr>
<td style="width: 94px;">25</td>
<td style="width: 94px;">26</td>
<td style="width: 95px;">27</td>
<td style="width: 95px;">28</td>
<td style="width: 95px;">29</td>
<td style="width: 95px;">30</td>
<td style="width: 95px;"> </td>
</tr>
</tbody>
</table>
25
26
27
28
29
30
将onclick侦听器添加到所需的元素中(我假设您正在动态生成单元格)
在css中:
.redBg{
background-color:red;
}
您可以根据需要附加和删除这些类,从而使用它们。你也可以通过这个改变更多的风格
$(文档).ready(函数(){
$('table tbody tr td')。在('click',changeColor');
});
函数changeColor(){
如果(!this.classList.contains('first')){
this.classList.add('first');
this.classList.remove('second');
}否则{
this.classList.remove('first');
this.classList.add('second');
}
}
。首先{
背景:红色;
}
.第二{
背景:蓝色;
}
25
26
27
28
29
30
您应该输入类似于数据color=true的内容,然后只为它们指定颜色更改
var td=document.getElementsByTagName(“td”),
len=td.长度,
我
函数changeColor(){
var color=this.style.background!=“红色”;
this.style.background=(颜色?“红色”:“首字母”);
}
对于(i=0;i只需与
document.querySelectorAll('tr td').forEach(函数(a){
a、 addEventListener('单击',函数()){
this.classList.toggle('color'))
})
})
.color{
背景色:红色;
}
25
26
27
28
29
30
这将适用于所有框,OP要求特定框。这将适用于所有框,OP要求特定框,而且您可以只使用toggleClass属性,而不是进入条件。这是真的,我只是尽量让代码尽可能简单。这样他就可以理解代码。
function changeColor(elt){
$elt = $(elt);
$elt.toggleClass("redBg");
}
.redBg{
background-color:red;
}