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 中实现炫酷的loading效果
Apr 26 HTML / CSS
纯CSS3实现圆角效果(含IE兼容解决方法)
May 07 HTML / CSS
HTML5对手机页面长按会粘贴复制禁用的解决方法
Jul 19 HTML / CSS
HTML5里autofocus自动聚焦属性使用介绍
Jun 22 HTML / CSS
HTML5 Canvas API中drawImage()方法的使用实例
Mar 25 HTML / CSS
HTML5网页音乐播放器的示例代码
Nov 09 HTML / CSS
HTML5注册表单的自动聚焦与占位文本示例代码
Jul 19 HTML / CSS
HTML5 Convas APIs方法详解
Apr 24 HTML / CSS
HTML5无刷新改变当前url的代码
Mar 15 HTML / CSS
html5 figure和figcaption的使用方法
Sep 10 HTML / CSS
html5 横向滑动导航栏的方法示例
May 08 HTML / CSS
纯CSS如何禁止用户复制网页的内容
Nov 01 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关联数组实现根据元素值删除元素的方法
2015/06/26 PHP
PHP的APC模块实现上传进度条
2015/10/27 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
2017/02/28 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
2017/07/26 PHP
在Laravel中使用DataTables插件的方法
2018/05/29 PHP
基于PHP实现解密或加密Cloudflar邮箱保护
2020/06/24 PHP
jquery获得option的值和对option进行操作
2013/12/13 Javascript
Javascript基础教程之函数对象和属性
2015/01/18 Javascript
jQuery使用load()方法载入另外一个网页文件内的指定标签内容到div标签的方法
2015/03/25 Javascript
js面向对象之公有、私有、静态属性和方法详解
2015/04/17 Javascript
javascript嵌套函数和在函数内调用外部函数的区别分析
2016/01/31 Javascript
jQuery EasyUI编辑DataGrid用combobox实现多级联动
2016/08/29 Javascript
原生JS查找元素的方法(推荐)
2016/11/22 Javascript
解析js如何获取css样式
2016/12/11 Javascript
详解ECMAScript6入门--Class对象
2017/04/27 Javascript
JS简单实现点击跳转登陆邮箱功能的方法
2017/10/31 Javascript
最适应的vue.js的form提交涉及多种插件【推荐】
2018/08/27 Javascript
开发用到的js封装方法(20种)
2018/10/12 Javascript
js实现移动端图片滑块验证功能
2020/09/29 Javascript
JavaScript实现消消乐的源代码
2021/01/12 Javascript
Python闭包实现计数器的方法
2015/05/05 Python
python实现发送form-data数据的方法详解
2019/09/27 Python
wxpython绘制圆角窗体
2019/11/18 Python
python GUI库图形界面开发之PyQt5布局控件QHBoxLayout详细使用方法与实例
2020/03/06 Python
美国现代家具和家居商店:Apt2B
2016/08/29 全球购物
工厂实习感言
2014/01/14 职场文书
教师竞聘上岗演讲稿
2014/09/03 职场文书
2014年维稳工作总结
2014/11/18 职场文书
关于远足的感想
2015/08/10 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
工作违纪的检讨书范文
2019/07/09 职场文书
python 解决微分方程的操作(数值解法)
2021/05/26 Python
MySQL七种JOIN类型小结
2021/10/24 MySQL
win11高清晰音频管理器在哪里?win11找不到高清晰音频管理器解决办法
2022/04/08 数码科技
Python实现对齐打印 format函数的用法
2022/04/28 Python
vue实现登陆页面开发实践
2022/05/30 Vue.js