context.clearRect(0, 0, canvas.width, canvas.height);
Очистит весь холст, удалив линию, которая была на холсте до сих пор.
Одно из решений - очистить холст только один раз перед началом рисования.Например, очистите холст в событии window.onLoad (), а затем очистите его только при запуске нового чертежа.
Вторым решением было бы сохранить каждое движение мыши в длинном массиве и перерисовать его.полная строка в каждом кадре.
редактировать: обновить с учетом ваших разъяснений ниже.Код не работает из-за синтаксической ошибки в коде clearRect.Вы используете «холст», который не определен.
context.clearRect(0, 0, c.width, c.height);
добивается цели!