Ну, вы можете попробовать это с помощью этого метода:
var holding = false;
document.body.addEventListener("mousedown", ()=>{
holding = true;
}
document.body.addEventListener("touchstart", ()=>{
holding = true;
}
document.body.addEventListener("mouseup", ()=>{
holding = false;
}
document.body.addEventListener("touchend", ()=>{
holding = false;
}
Затем вы можете отслеживать ваши движения холста:
document.getElementById("yourCanvasId").addEventListener("mousemove", ()=>{
if(holding == true){
x = event.clientX - rect.left;
y = event.clientY - rect.top;
}
}
document.getElementById("yourCanvasId").addEventListener("touchmove", ()=>{
if(holding == true){
x = event.clientX - rect.left;
y = event.clientY - rect.top;
}
}
С помощью socket.io вы можете отправлять эти движущиеся события на вашсервер и ваш сервер отправляют эту информацию всем вашим клиентам, а на стороне клиента вы можете написать небольшой скрипт, в котором вы можете прослушивать эти события и рисовать что-то в зависимости от этих событий.