移動端Canvas畫板簽名(原生js)

2021-09-29 22:32:40 字數 2170 閱讀 7511

首先建立畫布

乙個用來顯示觸屏區域

清空生成兩個按鈕

img顯示生成的

清空生成

#mycanvas

#operation

#position

#canvasimg

給畫布新增touch觸控事件

用來獲取

當前觸控的座標點相對於畫布的位置,

但在實現過程中發現touch座標點一直是相對body的位置

解決方法:

如圖,我們需要的值 = 觸控點獲取到的x - canvas相對body的左邊距

var start_x, start_y, move_x, move_y, end_x, end_y;

var canvas = document.getelementbyid("mycanvas");

var ctx = canvas.getcontext("2d");

var t = document.getelementbyid('mycanvas').offsettop;//canvas上邊距

var l = document.getelementbyid('mycanvas').offsetleft;//canvas做邊距

//按下

document.getelementbyid("mycanvas").addeventlistener("touchstart", function (e) ,$`);

});//移動

document.getelementbyid("mycanvas").addeventlistener("touchmove", function (e) ,$`);

});//鬆開

document.getelementbyid("mycanvas").addeventlistener("touchend", function (e) ,$`);

});

接下來

按下時開始繪畫,標記畫筆起始點

document.getelementbyid("mycanvas").addeventlistener("touchstart",function(e),$`);

});

移動過程中根據滑鼠路徑繪畫渲染出來

document.getelementbyid("mycanvas").addeventlistener("touchmove",function(e),$`);

});

鬆開時,建立從當前點到開始點的路徑

document.getelementbyid("mycanvas").addeventlistener("touchend",function(e),$`);

});

清空當前畫布clearrect(0,0,0,0)前兩個值代表起始點x,y

後兩個代表終止點x,y

document.getelementbyid('clearcanvas').onclick=function()
生成canvas.todataurl("image/png")

document.getelementbyid('success').onclick=function()

canvas實現畫板(移動端 h5)

如下 doctype html utf 8 畫板 title body canvas style head text align center 600 width 900 id canvas 親,您的瀏覽器不支援canvas,換個瀏覽器試試吧!span canvas div window.onloa...

移動端 canvas基礎1

canvas是html5中新出的乙個元素,開發者可以通過js指令碼動態繪製影象。1.建立canvas畫布 在頁面中建立canvas標籤,並設定其id和寬高 不要通過css設定,會有bug id mycanvas width 500 height 500 2.設定畫布 1.通過js設定畫布寬高 var...

移動端滑動輪播,原生JS

因為公司需要自定義兩個輪播圖聯動,又不想引入第三方庫,所以自己研究了下。下面只是乙個簡單的輪播圖,由此再拓展一下即可實現兩個輪播圖聯動。doctype html html lang en head meta charset utf 8 meta name viewport content width...