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 相关文章推荐
jquery实现弹出窗口效果的实例代码
Nov 28 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
Aug 07 Javascript
JS+CSS实现经典的左侧竖向滑动菜单效果
Sep 23 Javascript
js window对象属性和方法相关资料整理
Nov 11 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作
Nov 30 Javascript
js表单中选择框值的获取及表单的序列化
Dec 17 Javascript
JavaScript结合HTML DOM实现联动菜单
Apr 05 Javascript
JS获取当前时间的实例代码(昨天、今天、明天)
Nov 13 Javascript
深入解析koa之异步回调处理
Jun 17 Javascript
vue使用一些外部插件及样式的配置代码
Nov 18 Javascript
微信小程序实现拨打电话功能的示例代码
Jun 28 Javascript
JS操作JSON常用方法(10w阅读)
Dec 06 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分页集合包括使用方法
2013/10/21 PHP
php 获取SWF动画截图示例代码
2014/02/10 PHP
codeigniter发送邮件并打印调试信息的方法
2015/03/21 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
PHP中实现中文字串截取无乱码的解决方法
2018/05/29 PHP
python进程与线程小结实例分析
2018/11/11 PHP
Yii框架日志操作图文与实例详解
2019/09/09 PHP
thinkphp框架类库扩展操作示例
2019/11/26 PHP
PHP与Web页面的交互示例详解二
2020/08/04 PHP
IE中radio 或checkbox的checked属性初始状态下不能选中显示问题
2009/07/25 Javascript
用js控制组织结构图可以任意拖拽到指定位置
2014/01/17 Javascript
js确认删除对话框效果的示例代码
2014/02/20 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
浅谈js之字面量、对象字面量的访问、关键字in的用法
2016/11/20 Javascript
javascript实现鼠标点击页面 移动DIV
2016/12/02 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
bootstrap suggest搜索建议插件使用详解
2017/03/25 Javascript
Vue学习笔记进阶篇之vue-cli安装及介绍
2017/07/18 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
原生JavaScript实现Ajax异步请求
2017/11/19 Javascript
解决layui上传文件提示上传异常,实际文件已经上传成功的问题
2018/08/19 Javascript
WebGL three.js学习笔记之阴影与实现物体的动画效果
2019/04/25 Javascript
解决包含在label标签下的checkbox在ie8及以下版本点击事件无效果兼容的问题
2019/10/27 Javascript
vue-property-decorator用法详解
2019/12/12 Javascript
js的Object.assign用法示例分析
2020/03/05 Javascript
javascript实现倒计时提示框
2021/03/02 Javascript
python中enumerate函数遍历元素用法分析
2016/03/11 Python
python中将函数赋值给变量时需要注意的一些问题
2017/08/18 Python
python中时间、日期、时间戳的转换的实现方法
2019/07/06 Python
django 控制页面跳转的例子
2019/08/06 Python
韩国三星集团旗下时尚品牌官网:SSF SHOP
2016/08/02 全球购物
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
时尚圣经:The Fashion Bible
2019/03/03 全球购物
退休教师欢送会致辞
2015/07/31 职场文书
导游词之晋城蟒河
2019/12/12 职场文书
Go 语言结构实例分析
2021/07/04 Golang