28 - Eventos onmousedown,onmouseup


El evento onmousedown se dispara cuando presionamos alguno de los botones del mouse y el evento onmouseup cuando dejamos de presionar el botón.

Implementemos una página que contenga una tabla con una fila y dos columna, al presionar el botón del mouse dentro de una casilla de la tabla cambiar el color de fondo de la misma por amarillo y cuando levantamos el dedo del mouse regresar a color blanco la casilla.
pagina.html

<!DOCTYPE html>
<html lang="es">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Prueba</title>
</head>

<body>
    <table border="1">
        <tr>
            <td onmousedown="presionar(this)" onmouseup="levantar(this)">Recuadro 1</td>
            <td onmousedown="presionar(this)" onmouseup="levantar(this)">Recuadro 2</td>
        </tr>
    </table>
    <script src="funciones.js"></script>
</body>

</html>

funciones.js

function presionar(objeto) {
    objeto.style.backgroundColor = '#ff0'
}

function levantar(objeto) {
    objeto.style.backgroundColor = '#fff'
}

Es importante notar que a cada elemento td inicializamos los eventos onmousedown y onmouseup:

<td onmousedown="presionar(this)" onmouseup="levantar(this)">

Recordemos que la palabra this significa pasar la referencia del objeto que emitió el evento.


Luego en cada función accedemos a la propiedad style y de esta a la propiedad backgroundColor:

  objeto.style.backgroundColor='#ff0';

Retornar