当前位置: 首页 > news >正文

只做外贸的公司网站株洲seo快速排名

只做外贸的公司网站,株洲seo快速排名,广州商城网站建设报价,专做专业课视频的网站手机上的效果图 需要注意&#xff0c;手机触摸和鼠标不是一个事件&#xff0c;不能通用&#xff0c;上一篇是关于使用鼠标的样例 相关代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewpo…

手机上的效果图

image

需要注意,手机触摸和鼠标不是一个事件,不能通用,上一篇是关于使用鼠标的样例

相关代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.buttons {margin-top: 10px;}</style>
</head><body><div><canvas id="signatureCanvas" width="500" height="200" style="border:solid;"></canvas><button onclick="clearSignature()">清除</button><button onclick="undoLast()">清除上一步</button><button onclick="saveSignature()">保存</button></div><script>const canvas = document.getElementById('signatureCanvas');const ctx = canvas.getContext('2d');let isDrawing = false;let lastX, lastY;let strokes = []; // 用于存储每一步的绘制操作// 触摸开始事件function handleTouchStart(e) {e.preventDefault(); // 阻止默认的触摸事件isDrawing = true;[lastX, lastY] = [e.touches[0].clientX - canvas.offsetLeft, e.touches[0].clientY - canvas.offsetTop];strokes.push([]); // 开始新的笔画}// 触摸移动事件function handleTouchMove(e) {e.preventDefault(); // 阻止默认的触摸事件if (!isDrawing) return; // 如果没有触摸,则退出函数const x = e.touches[0].clientX - canvas.offsetLeft;const y = e.touches[0].clientY - canvas.offsetTop;ctx.beginPath();ctx.moveTo(lastX, lastY);ctx.lineTo(x, y);ctx.stroke();strokes[strokes.length - 1].push({ x: lastX, y: lastY, x2: x, y2: y }); // 记录当前笔画[lastX, lastY] = [x, y];}// 触摸结束事件function handleTouchEnd(e) {e.preventDefault(); // 阻止默认的触摸事件isDrawing = false;}// 清除签名function clearSignature() {ctx.clearRect(0, 0, canvas.width, canvas.height);strokes = []; // 清空所有笔画记录}// 撤销上一步function undoLast() {strokes.pop(); // 移除最后一个笔画redraw(); // 重新绘制画布}// 重新绘制画布function redraw() {ctx.clearRect(0, 0, canvas.width, canvas.height); // 清空画布strokes.forEach(stroke => {stroke.forEach(line => {ctx.beginPath();ctx.moveTo(line.x, line.y);ctx.lineTo(line.x2, line.y2);ctx.stroke();});});}// 保存签名function saveSignature() {const imgData = ctx.getImageData(0, 0, canvas.width, canvas.height);// 将图片数据转换成 base64 格式const base64ImageData = canvas.toDataURL();console.log(base64ImageData);}// 绑定事件canvas.addEventListener('touchstart', handleTouchStart);canvas.addEventListener('touchmove', handleTouchMove);canvas.addEventListener('touchend', handleTouchEnd);canvas.addEventListener('touchcancel', handleTouchEnd);</script>
</body></html>
http://www.ritt.cn/news/20780.html

相关文章:

  • dw做网站怎么连接gif图片营销广告网站
  • 西安网站建设技术外包销售找客户的app
  • 做耳鼻喉医院网站多少钱百度广告位
  • 重庆公司网站建设网址查询注册信息查询
  • 做视频上传可以赚钱的网站外链交换平台
  • 西安微信网站建设公司百度网盘在线登录入口
  • 社区网站制作电脑培训速成班多少钱
  • 集团微信网站方案策划郑州今天刚刚发生的新闻
  • 用r语言 做网站点击热力图青岛网站seo
  • WordPress mip 评论框seo优化主要做什么
  • 多个网站 备案吗看今天的新闻
  • 兼职做诚信网站认证域名查询备案
  • 设计网站哪个好用谷歌google
  • 动态网站制作软件网络维护
  • 没有自己的境外网站怎么做谷歌推广上海网络营销有限公司
  • 找个网站怎么那么难山东网页定制
  • 开封网站建设zducm外链网站大全
  • 淘客网站如何做宁波网络推广方式
  • 宁波网站建设优化东莞网络营销渠道
  • 网站建设案例展示最好用的搜索引擎
  • wordpress好用的模板下载地址宁波seo网络推广外包报价
  • 做个网站怎么赚钱百度知道
  • 扬州网站建设推广厦门seo排名扣费
  • 龙岗网站开发公司杭州seo公司
  • 西安做网站公司百度人工客服24小时
  • 网站开发目标天津seo推广
  • 动画视频模板网站培训心得体会模板
  • 网站关键词策略网站推广计划书
  • h5做的网站如何连接数据库windows7系统优化工具
  • 杭州网站建设模板营销型企业网站推广的方法有哪些