Не получается очистить canvas рисовалку

110
26 августа 2019, 17:40

Не получается очистить холст, не хватает какой-то простой доработки. Подскажите пожалуйста какой

var canvas = document.getElementById("canvas"); 
var ctx = canvas.getContext("2d"); 
var myColor = "#fff"; 
ctx.fillStyle = "gray"; 
ctx.fillRect(10, 10, 400, 250); 
let clearButton = document.querySelector('#button'); 
 
 
 
canvas.onmousedown = function(event) { 
    var x = event.offsetX; 
    var y = event.offsetY; 
    ctx.strokeStyle = myColor; 
    ctx.lineCap = "round"; 
    ctx.lineWidth = 8; 
    ctx.moveTo (x,y); 
    canvas.onmousemove = function (event){ 
        var x = event.offsetX; 
        var y = event.offsetY; 
        ctx.lineTo(x, y); 
        ctx.stroke(); 
    } 
    canvas.onmouseup = function() { 
        canvas.onmousemove = null; 
    } 
}; 
 
 
button.onclick = function (event) { 
  ctx.clearRect(0, 0, canvas.width, canvas.height); 
  ctx.fillRect(10, 10, 400, 250); 
};
<canvas id="canvas" width="400" height = "250"></canvas> 
<button id="button">Clear canvas</button>

Answer 1

var canvas = document.getElementById("canvas"); 
var ctx = canvas.getContext("2d"); 
var myColor = "#fff"; 
ctx.fillStyle = "gray"; 
ctx.fillRect(10, 10, 400, 250); 
let clearButton = document.querySelector('#button'); 
 
 
 
canvas.onmousedown = function(event) { 
    var x = event.offsetX; 
    var y = event.offsetY; 
    ctx.beginPath(); 
 
    ctx.strokeStyle = myColor; 
    ctx.lineCap = "round"; 
    ctx.lineWidth = 8; 
    ctx.moveTo (x,y); 
    canvas.onmousemove = function (event){ 
        var x = event.offsetX; 
        var y = event.offsetY; 
        ctx.lineTo(x, y); 
        ctx.stroke(); 
        ctx.stroke(); 
 
    } 
    canvas.onmouseup = function() { 
        canvas.onmousemove = null; 
    } 
}; 
 
 
button.onclick = function (event) { 
  ctx.clearRect(0, 0, canvas.width, canvas.height); 
  ctx.fillRect(10, 10, 400, 250); 
};
<canvas id="canvas" width="400" height = "250"></canvas> 
<button id="button">Clear canvas</button>

READ ALSO
Lxml.html Python

Lxml.html Python

Я не понимаю, как сделать нормальный вывод тега

146
HTML5 audio. Не работает перемотка в Хроме

HTML5 audio. Не работает перемотка в Хроме

Есть html5 audio тэг в котором проигрывается mp3 с удаленного сервера (запись разговора телефонии)Подгружается и проигрывает нормально

196
Не меняется цвет лэйбла(радиобаттон) при :checked!

Не меняется цвет лэйбла(радиобаттон) при :checked!

Делаю слайдер с помощью CSS: радиобаттоны + к ним лейблы(чтобы, через них стилизовать)Все работает - слайды переключаются при :checked

111
Как добавить и удалить блок div?

Как добавить и удалить блок div?

Форма, в которой есть div с id="field", где addElement() добавляет элементы в div с id='content'Мне нужно задействовать кнопки "Удалить" div c id="field" и "Добавить" такой...

154