html5+canvas实现支持触屏的签名插件教程


Posted in Javascript onMay 08, 2017

前言

大家在日常开发中使用该jQuery插件来制作在线签名,用户绘制的东西以图片的形式保存下来,非常方便实用。下面将实现支持的方法分享给大家,供大家参考学习,下面来一起看看详细的介绍吧。

方法如下:

使用该签名插件要引入jQuery和jq-signature.js文件。

<script src="jquery/1.11.0/jquery.min.js"></script>
<script src="jq-signature.js"></script>

html5+canvas实现支持触屏的签名插件教程

HTML结构

<!-- 创建一个签名区域,使用HTML5的data-option来传递一些参数 -->
<div class="js-signature" 
 data-width="600" 
 data-height="200" 
 data-border="1px solid #1ABC9C" 
 data-background="#16A085" 
 data-line-color="#fff" 
 data-auto-fit="true">
</div>
 
<!-- 创建两个操作按钮,分别用于清空画板和保存签名 -->
<button id="clearBtn" onclick="clearCanvas();">Clear Canvas</button>
<button id="saveBtn" onclick="saveSignature();" disabled>Save Signature</button>
 
<!-- 可以使用一个空的<div>来显示保存的签名图片 -->
<div id="signature"></div>

初始化插件

//页面加载完毕之后使用下面的方法来初始化该签名插件
$(document).on('ready', function() {
 $('.js-signature').jqSignature();
});
 
function clearCanvas() {
 $('#signature').html('<p><em>Your signature will appear here when you click "Save Signature"</em></p>');
 $('.js-signature').jqSignature('clearCanvas');
 $('#saveBtn').attr('disabled', true);
}
 
function saveSignature() {
 $('#signature').empty();
 var dataUrl = $('.js-signature').jqSignature('getDataURL');
 var img = $('<img>').attr('src', dataUrl);
 $('#signature').append($('<p>').text("Here's your signature:"));
 $('#signature').append(img);
}
 
$('.js-signature').on('jq.signature.changed', function() {
 $('#saveBtn').attr('disabled', false);
});

配置参数

下面是该签名插件的一些可用参数,这些参数可以同时在data-attributes上使用:

参数 描述 Data Attribute 示例
Width 签名canvas的宽度,单位像素,默认值300 data-width="600" $().jqSignature({width: 600});
Height 签名canvas的高度,单位像素,默认值100 data-height="200" $().jqSignature({height: 200});
Border 签名canvas的边框CSS样式。默认为'1px solid #AAAAAA' data-border="1px solid red" $().jqSignature({border: '1px solid red'});
Background 签名canvas的背景颜色,默认值为'#FFFFFF' data-background="#EEEEEE" $().jqSignature({background: '#EEEEEE'});
Line Color 签名的颜色。默认值为#222222' data-line-color="#ABCDEF" $().jqSignature({lineColor: '#ABCDEF'});
Line Width 签名的线宽,单位像素,默认值为1 data-line-width="2" $().jqSignature({lineWidth: 2});
Auto Fit 使canvas占满父元素的宽度,默认值false data-auto-fit="true" $().jqSignature({autoFit: true});

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
date.parse在IE和FF中的区别
Jul 29 Javascript
jquery的extend和fn.extend的使用说明
Jan 09 Javascript
可选择和输入的下拉列表框示例
Nov 05 Javascript
javascript按位非运算符的使用方法
Nov 14 Javascript
jquery实现鼠标经过显示下划线的渐变下拉菜单效果代码
Aug 24 Javascript
JQuery 的跨域方法推荐_可跨任何网站
May 18 Javascript
AngularJS基础 ng-cut 指令介绍及简单示例
Aug 01 Javascript
再谈javascript注入 黑客必备!
Sep 14 Javascript
AngularJS实现DOM元素的显示与隐藏功能
Nov 22 Javascript
最好用的Bootstrap fileinput.js文件上传组件
Dec 12 Javascript
js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解
Mar 15 Javascript
JavaScript运动框架 多物体任意值运动(三)
May 17 Javascript
JQuery实现图片轮播效果
May 08 #jQuery
jQuery中的deferred对象和extend方法详解
May 08 #jQuery
vue 2.0路由之路由嵌套示例详解
May 08 #Javascript
node.js中EJS 模板快速入门教程
May 08 #Javascript
详解用node-images 打造简易图片服务器
May 08 #Javascript
vue.js中Vue-router 2.0基础实践教程
May 08 #Javascript
angular实现IM聊天图片发送实例
May 08 #Javascript
You might like
以文本方式上传二进制文件的PHP程序
2006/10/09 PHP
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
2014/05/10 PHP
PHP实现支持SSL连接的SMTP邮件发送类
2015/03/05 PHP
PHP Imagick完美实现图片裁切、生成缩略图、添加水印
2016/02/22 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
让复选框只能选择一项的方法
2013/10/08 Javascript
JS批量操作CSS属性详细解析
2013/12/16 Javascript
JS获取时间的方法
2015/01/21 Javascript
JS根据生日算年龄的方法
2015/05/05 Javascript
原生js三级联动的简单实现代码
2016/06/07 Javascript
[js高手之路]图解javascript的原型(prototype)对象,原型链实例
2017/08/28 Javascript
JavaScript实现电灯开关小案例
2020/03/30 Javascript
vue中watch和computed的区别与使用方法
2020/08/23 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
javascript实现简单留言板案例
2021/02/09 Javascript
JavaScript 生成唯一ID的几种方式
2021/02/19 Javascript
[51:11]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS DT
2014/05/22 DOTA
[43:43]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第三场 11.29
2020/12/02 DOTA
200行自定义python异步非阻塞Web框架
2017/03/15 Python
Python 函数返回值的示例代码
2019/03/11 Python
python多进程读图提取特征存npy
2019/05/21 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
python使用minimax算法实现五子棋
2019/07/29 Python
django fernet fields字段加密实践详解
2019/08/12 Python
如何使用pycharm连接Databricks的步骤详解
2020/09/23 Python
印度在线杂货店:bigbasket
2018/08/23 全球购物
TobyDeals美国:在电子产品上获得最好的优惠和折扣
2019/08/11 全球购物
德国帽子专家:Hutshopping
2019/11/03 全球购物
服务行业个人求职的自我评价
2013/12/12 职场文书
北京故宫的导游词
2015/01/31 职场文书
学校开除通知书
2015/04/25 职场文书
信用卡工资证明范本
2015/06/19 职场文书
Python获取百度热搜的完整代码
2021/04/07 Python
Python 使用dict实现switch的操作
2021/04/07 Python
使用Redis做预定库存缓存功能
2022/04/02 Redis