canvas画布实现手写签名效果的示例代码


Posted in HTML / CSS onApril 23, 2019

最近项目中涉及到移动端手写签名的功能需求,将实现代码记录于此,供小伙伴们参考指摘哦~

HTML代码:

<!--手写区-->
        <div class="mSign_signMark_box">
            <div class="mSign_signMark_write_box">
                <div id="mSign_signMark_signature_pad" class="mSign_signMark_body_box">
                    <div class="mSign_signMark_body">
                        <span  class="mSign_signMark_clear_out">
                            <img src="../images/mCommon_basicIcon_deleteRed.png">
                        </span>
                        <p>手写区</p>
                        <canvas id="mSign_signMark_canvas"></canvas>
                    </div>
                </div>
            </div>
        </div>
        <!--手写区 end-->
        <!--底部按钮-->
        <div class="mSign_signMark_footer">
            <span id="mSign_signMark_clear_out" class="mSign_signMark_footer_cancle">清除</span>
            <span id="mSign_signMark_submit" class="mSign_signMark_footer_sure">确定</span>
        </div>
        <!--底部按钮 end-->

CSS样式:

.mSign_signMark_box{padding: 15px 15px 26px 15px;}
.mSign_signMark_footer{max-width:640px;margin:0 auto;height: 44px;background: #4ba7eb;position: fixed;bottom: 0;left: 0;right: 0;color:#fff;font-size: 16px;text-align: center;line-height: 44px;}
.mSign_signMark_footer span{display: block;width: 50%;text-align: center;float: left;}
.mSign_signMark_footer_cancle{background: #f4f4f5;color: #333333;}
/*手写签名*/
.mSign_signMark_write_box{position: relative;height: 240px;}
.mSign_signMark_body_box {position: absolute;background-color: #fff;border: 1px solid #ccc;top:0;left: 0;right: 0;bottom: 0;width: 99%;height: auto;min-width: 250px;min-height: 140px;}
.mSign_signMark_body {position: absolute;left: 0;right: 0;top: 0;bottom: 0;}
.mSign_signMark_body canvas {position: absolute;left: 0;top: 0;width: 100%;height: 100%;}
.mSign_signMark_body p{position: absolute;font-size: 14px;color: #ccc;text-align: center;width: 100%;top: 50%;margin-top: -22px;}
.mSign_signMark_clear_out{position: absolute;top:-10px;right: -5px;z-index: 10;display: none;}
.mSign_signMark_clear_out img{width: 18px;height: 18px;}

页面引入JS:

//手写区触摸事件
$(function() {
    var ctouch=$('.mSign_signMark_body canvas');
    ctouch.bind("touchstart",function(event){
        $('.mSign_signMark_body p').hide();
    });
    ctouch.mouseover(function(event) {
        $('.mSign_signMark_body p').hide();
    });
});

手写签名引入js文件地址:qianmian-js_3water.rar

实现效果如下:

canvas画布实现手写签名效果的示例代码

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

HTML / CSS 相关文章推荐
css3背景图片透明叠加属性cross-fade简介及用法实例
Jan 08 HTML / CSS
发现两个有趣的CSS3动画效果
Aug 14 HTML / CSS
一款基于css3的列表toggle特效实例教程
Jan 04 HTML / CSS
利用css3径向渐变做一张优惠券的示例
Mar 22 HTML / CSS
基于Html5实现的react拖拽排序组件示例
Aug 13 HTML / CSS
浅谈cookie和localStorage那些事
Aug 27 HTML / CSS
html5 Canvas画图教程(9)—canvas中画出矩形和圆形
Jan 09 HTML / CSS
HTML5之SVG 2D入门7—SVG元素的重用与引用
Jan 30 HTML / CSS
HTML5中使用postMessage实现两个网页间传递数据
Jun 22 HTML / CSS
Html5实现移动端、PC端 刮刮卡效果
Jun 30 HTML / CSS
amaze ui 的使用详细教程
Aug 19 HTML / CSS
使用HBuilder制作一个简单的HTML5网页
Jul 07 HTML / CSS
HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能
Apr 26 #HTML / CSS
html5中监听canvas内部元素点击事件的三种方法
Apr 28 #HTML / CSS
Html5实现单张、多张图片上传功能
Apr 28 #HTML / CSS
鲜为人知的HTML5语音合成功能
May 17 #HTML / CSS
Html5内唤醒百度、高德APP的实现示例
May 20 #HTML / CSS
socket.io 和canvas 实现的共享画板功能
May 22 #HTML / CSS
Canvas 文字碰撞检测并抽稀的方法
May 27 #HTML / CSS
You might like
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
PHP上传图片类显示缩略图功能
2016/06/30 PHP
PHP的PDO大对象(LOBs)
2019/01/27 PHP
jQuery图片预加载 等比缩放实现代码
2011/10/04 Javascript
JS 实现导航栏悬停效果(续2)
2013/09/24 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
jquery中attr和prop的区别分析
2015/03/16 Javascript
javascript实现回到顶部特效
2015/05/06 Javascript
jQuery复制节点用法示例(clone方法)
2016/09/08 Javascript
浅谈angular2的http请求返回结果的subcribe注意事项
2017/03/01 Javascript
vue2.0实战之使用vue-cli搭建项目(2)
2017/03/27 Javascript
element-ui 中的table的列隐藏问题解决
2018/08/24 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
微信小程序制作表格的方法
2019/02/14 Javascript
Electron-vue开发的客户端支付收款工具的实现
2019/05/24 Javascript
JavaScript数组及常见操作方法小结
2019/11/13 Javascript
[55:42]VG vs VGJ.T 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
Python制作刷网页流量工具
2017/04/23 Python
python,Django实现的淘宝客登录功能示例
2019/06/12 Python
Python使用贪婪算法解决问题
2019/10/22 Python
python抓取多种类型的页面方法实例
2019/11/20 Python
keras分类之二分类实例(Cat and dog)
2020/07/09 Python
matplotlib.pyplot.plot()参数使用详解
2020/07/28 Python
python中用ggplot绘制画图实例讲解
2021/01/26 Python
浅谈CSS3特性查询(Feature Query: @supports)功能简介
2017/07/31 HTML / CSS
Vision Directa智利眼镜网:框架眼镜、隐形眼镜和名牌太阳眼镜
2016/11/23 全球购物
linux面试题参考答案(2)
2015/12/06 面试题
幼儿园中班上学期评语
2014/04/18 职场文书
环保倡议书50字
2014/05/15 职场文书
四风对照检查材料思想汇报
2014/09/20 职场文书
关于调整工作时间的通知
2015/04/24 职场文书
2015年度环卫处工作总结
2015/07/24 职场文书
2015年重阳节活动主持词
2015/07/30 职场文书
公司业务员管理制度
2015/08/05 职场文书
五年级语文教学反思
2016/03/03 职场文书
在redisCluster中模糊获取key方式
2021/07/09 Redis