Resalte el color del borde de la celda cuando haga clic, cambie de nuevo cuando haga clic en otros
Tengo el siguiente código:
function highlight(cell){
cell.style.borderColor = "red";
}
function originalColor(cell){
cell.style.borderColor = "black";
}
td{
cursor: pointer;
}
<table border="1">
<tr>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 1</td>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 2</td>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 3</td>
</tr>
<tr>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 4</td>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 5</td>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 6</td>
</tr>
<tr>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 7</td>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 8</td>
<td onmousedown="highlight(this);" onblur="originalColor(this);">Cell 9</td>
</tr>
</table>
Resaltará el borde a rojo cuando haga clic, cuando haga clic en la otra celda, suponga que cambiará de nuevo a color negro, pero no funciona, lo intentoonmouseup
, onmouseover
, no funciona como lo que quiero.
La técnica que he probado es usartabindex
, funciona; pero eso puede resaltar una celda, si trato de seleccionar 2 celdas al mismo tiempo, no funciona. Alguien puede ayudar?