javascript+Canvas实现画板功能


Posted in Javascript onJune 23, 2020

本文实例为大家分享了Canvas实现画板功能的具体代码,供大家参考,具体内容如下

CSS样式代码

body,
 html {
 text-align: center;
 padding-top: 20px;
 /*margin: 0;*/
 }

canvas {
 box-shadow: 0 0 10px #333;
 margin: 0 auto;
 /*position: absolute;
 left: 0; 
 border: 1px solid red;*/
}

这是主体代码

<body onload="draw()">
 <canvas id="canvas" width="800" height="600">
 </canvas>
 <script>
 function draw() {
 var canvas = document.getElementById("canvas");
 if (canvas.getContext) {
 var ctx = canvas.getContext('2d');
 //涂鸦
 //添加鼠标按下事件
 canvas.onmousedown=function(e){
  var ev=e||window.event;//兼容性
  var x=ev.clientX-canvas.offsetLeft;
  var y=ev.clientY-canvas.offsetTop;
  
 ctx.strokeStyle='red';
 ctx.lineWidth=10;
  
 ctx.beginPath();
 ctx.moveTo(x,y);

 //onmousemove
 canvas.onmousemove=function(e){
 var ev=e||window.event;//兼容性
 var x=ev.clientX - canvas.offsetLeft;
 var y=ev.clientY - canvas.offsetTop;
 ctx.lineTo(x,y);
 ctx.stroke();
 }
  canvas.onmouseup=function(){
  canvas.onmousemove="";//当鼠标不点击时则不会画画
  
  }
 }
 }
   }
</script>
</body>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 浮点数运算 精度问题
Oct 06 Javascript
JavaScript打字小游戏代码
Dec 26 Javascript
javascript测试题练习代码
Oct 10 Javascript
js实现右下角可关闭最小化div(可用于展示推荐内容)
Jun 24 Javascript
JavaScript中的toLocaleLowerCase()方法使用详解
Jun 06 Javascript
JS实现超简单的仿QQ折叠菜单效果
Sep 21 Javascript
JavaScript tab选项卡插件实例代码
Feb 23 Javascript
Web前端框架bootstrap实战【第一次接触使用】
Dec 28 Javascript
js面向对象之实现淘宝放大镜
Jan 15 Javascript
Vue数字输入框组件使用方法详解
Feb 10 Javascript
vue+echarts+datav大屏数据展示及实现中国地图省市县下钻功能
Nov 16 Javascript
javascript中闭包closure的深入讲解
Mar 03 Javascript
vue.js实现照片放大功能
Jun 23 #Javascript
vue实现点击按钮切换背景颜色的示例代码
Jun 23 #Javascript
vue.js实现双击放大预览功能
Jun 23 #Javascript
vue实现分页的三种效果
Jun 23 #Javascript
微信小程序清空输入框信息与实现屏幕往上滚动的示例代码
Jun 23 #Javascript
weui上传多图片,压缩,base64编码的示例代码
Jun 22 #Javascript
详细分析Node.js 多进程
Jun 22 #Javascript
You might like
php文件上传类完整实例
2016/05/14 PHP
PHP扩展mcrypt实现的AES加密功能示例
2019/01/29 PHP
PHP strripos函数用法总结
2019/02/11 PHP
PHP使用PDO 连接与连接管理操作实例分析
2020/04/21 PHP
从新浪弄下来的全屏广告代码 与使用说明
2007/03/15 Javascript
javascript数组随机排序实例分析
2015/07/22 Javascript
JavaScript的代码编写格式规范指南
2015/12/07 Javascript
微信小程序 开发之快递查询功能的实现
2017/01/09 Javascript
无法获取隐藏元素宽度和高度的解决方案
2017/03/07 Javascript
JS+DIV实现的卷帘效果示例
2017/03/22 Javascript
vue watch自动检测数据变化实时渲染的方法
2018/01/16 Javascript
从零开始封装自己的自定义Vue组件
2018/10/09 Javascript
35个最好用的Vue开源库(史上最全)
2019/01/03 Javascript
angular8.5集成TinyMce5的使用和详细配置(推荐)
2020/11/16 Javascript
React服务端渲染原理解析与实践
2021/03/04 Javascript
使用python装饰器验证配置文件示例
2014/02/24 Python
Python构造自定义方法来美化字典结构输出的示例
2016/06/16 Python
Python利用BeautifulSoup解析Html的方法示例
2017/07/30 Python
Django Admin 实现外键过滤的方法
2017/09/29 Python
Python中的并发处理之asyncio包使用的详解
2018/04/03 Python
Python输入二维数组方法
2018/04/13 Python
在django模板中实现超链接配置
2019/08/21 Python
Django中ORM找出内容不为空的数据实例
2020/05/20 Python
Python识别验证码的实现示例
2020/09/30 Python
Cotton On南非:澳洲时尚平价品牌
2018/06/28 全球购物
日本酒店、民宿、温泉旅馆、当地旅行团中文预订:e路东瀛
2019/12/09 全球购物
如何客观的进行自我评价
2013/12/17 职场文书
爱情检讨书大全
2014/01/21 职场文书
高级编程求职信模板
2014/02/16 职场文书
2014年党的群众路线整改措施思想汇报
2014/10/12 职场文书
2014年居委会工作总结
2014/12/09 职场文书
2014年服务员个人工作总结
2014/12/23 职场文书
爱护环境卫生倡议书
2015/04/29 职场文书
2016感恩母亲节校园广播稿
2015/12/17 职场文书
MYSQL 无法识别中文的永久解决方法
2021/06/03 MySQL
浅谈Python数学建模之整数规划
2021/06/23 Python