En múltiples ejemplos hemos visto cómo poner contenido sobre un CANVAS de HTML5. En este caso vamos a aprender como podemos limpiar el contenido del CANVAS. Es decir, eliminar cualquier dibujo o trazo que hayamos insertado en él.
Así que para empezar necesitamos tener un elemento CANVAS con contenido. Podemos volcar lo siguiente:
Crear el CANVAS:
<canvas id="micanvas" width="300px" height="300px"> Su navegador no soporta en elemento CANVAS</canvas> <br> <button id="limpiar">Limpiar Canvas</button>
El insertarle contenido:
var canvas = document.getElementById("micanvas"); var ctx = canvas.getContext("2d"); for (var x=0; x<=300; x=x+10){ ctx.moveTo(x,0); ctx.lineTo(x,300); } for (var y=0; y<=300; y=y+10){ ctx.moveTo(0,y); ctx.lineTo(300,y); } ctx.strokeStyle = "#f212aa"; ctx.stroke();
Hemos creado un elemento CANVAS y hemos dibujado líneas sobre él. Además hemos añadido un botón, con id «limpiar», que será el encargado de limpiar el contenido de nuestro CANVAS.
Para proceder a la limpieza del CANVAS solo tenemos que recurrir a un «pequeño truco», el cual consiste en asignar un nuevo ancho al elemento CANVAS. Pero, ¿cuál será el nuevo ancho? Pues exactamente el mismo ancho que tiene en ese momento. Si bien, por el acto de asignar el nuevo ancho se limpiará el contenido del CANVAS.
El código quedará de la siguiente forma:
var limpiar = document.getElementById("limpiar"); limpiar.addEventListener("click",function(){ canvas.width=canvas.width; },false);
Lo que hemos hecho ha sido dar el mismo valor de la propiedad width del CANVAS. Y ya tenemos en blanco, de nuevo, nuestro CANVAS.