GitHub链接-完整文档
最近做一个移动端项目, 有电子签名功能, 生产PNG格式上传服务器, 而且需要横屏签名, 这需要注意移动端的横屏后宽高的变化, 以下是JS核心部分, 完整文档请点击上面链接
var canvas = document.getElementById("canvas");//动态设置宽高canvas.width = 400;canvas.height = 300;var content = canvas.getContext("2d");//设置画笔的样式 content.strokeStyle = "#000";content.lineWidth = 1;content.lineCap = 'round';content.lineJoin = 'round';content.shadowBlur = 1;content.shadowColor = '#000';content.beginPath();//点击canvas.addEventListener("touchstart", function(e) {content.beginPath();var touch = e.targetTouches[0];var x = touch.pageX - canvas.offsetLeft;var y = touch.pageY - canvas.offsetTop;content.moveTo(x, y);});//移动canvas.addEventListener("touchmove", function(event) {event.preventDefault();var touch = event.targetTouches[0];var x = touch.pageX - canvas.offsetLeft;var y = touch.pageY - canvas.offsetTop;content.lineTo(x, y);content.stroke();});//结束canvas.addEventListener("touchend", function(event) {content.closePath();$('.but2').attr('disabled', false);});//清除画布 .but1元素 点击事件document.querySelector(".but1").onclick = function() {content.clearRect(0, 0, canvas.offsetWidth, canvas.offsetHeight);}