Create an interactive canvas for drawing.
HTML
<div>
<p> draw something here </p>
<canvas id="drawArea"></canvas>
</div>
JavaScript
const canvas = document.getElementById('drawArea');
const ctx = canvas.getContext('2d');
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
// Brush settings
ctx.strokeStyle = '#0b84ff';
ctx.lineWidth = 4;
ctx.lineCap = 'round';
let isDrawing = false;
let lastX = 0;
let lastY = 0;
canvas.addEventListener('mousedown', (event) => {
isDrawing = true;
[lastX, lastY] = [event.offsetX, event.offsetY];
});
canvas.addEventListener('mousemove', (event) => {
if (!isDrawing) return;
ctx.beginPath();
ctx.moveTo(lastX, lastY);
ctx.lineTo(event.offsetX, event.offsetY);
ctx.stroke();
[lastX, lastY] = [event.offsetX, event.offsetY];
});
canvas.addEventListener('mouseup', () => isDrawing = false);
canvas.addEventListener('mouseleave', () => isDrawing = false);