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 相关文章推荐
JavaScript 类似flash效果的立体图片浏览器
Feb 08 Javascript
JavaScript DOM 学习第九章 选取范围的介绍
Feb 19 Javascript
js实现拉幕效果的广告代码
Sep 02 Javascript
一道关于JavaScript变量作用域的面试题
Mar 08 Javascript
利用Bootstrap实现表格复选框checkbox全选
Dec 21 Javascript
vue2.0实战之使用vue-cli搭建项目(2)
Mar 27 Javascript
three.js实现3D影院的原理的代码分析
Dec 18 Javascript
JS中Object对象的原型概念基础
Jan 29 Javascript
js实现动态改变radio状态的方法
Feb 28 Javascript
vue路由拦截及页面跳转的设置方法
May 24 Javascript
深入理解Vue keep-alive及实践总结
Aug 21 Javascript
JavaScript变量基本使用方法实例分析
Nov 15 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
为php4加入动态flash文件的生成的支持
2006/10/09 PHP
php,不用COM,生成excel文件
2006/10/09 PHP
php目录操作函数之获取目录与文件的类型
2010/12/29 PHP
PHP入门教程之面向对象基本概念实例分析
2016/09/11 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
2016/11/25 PHP
php写app接口并返回json数据的实例(分享)
2017/05/20 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
jquery autocomplete自动完成插件的的使用方法
2010/08/07 Javascript
JSDoc 介绍使用规范JsDoc的使用介绍
2011/02/12 Javascript
javascript检测页面是否缩放的小例子
2013/05/16 Javascript
Jquery获取复选框被选中值的简单方法
2013/07/04 Javascript
javascript正则表达式定义(语法)总结
2016/01/08 Javascript
jQuery简单实现上下,左右滑动的方法
2016/06/01 Javascript
javascript滚轮事件基础实例讲解(37)
2017/02/14 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
JavaScript实现QQ列表展开收缩扩展功能
2017/10/30 Javascript
layer实现关闭弹出层刷新父界面功能详解
2017/11/15 Javascript
angularjs通过过滤器返回超链接的方法
2018/10/26 Javascript
javascript 数组精简技巧小结
2020/02/26 Javascript
vue element 关闭当前tab 跳转到上一路由操作
2020/07/22 Javascript
[30:55]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第二场 11.18
2020/11/18 DOTA
python实现机械分词之逆向最大匹配算法代码示例
2017/12/13 Python
Python缓存技术实现过程详解
2019/09/25 Python
Python 2种方法求某个范围内的所有素数(质数)
2020/01/31 Python
python 链接sqlserver 写接口实例
2020/03/11 Python
html5在移动端的屏幕适应问题示例探讨
2014/06/15 HTML / CSS
美国最大的珠宝首饰网上商城:Jewelry.com
2016/07/22 全球购物
美国时尚大码女装购物网站:Avenue
2019/05/24 全球购物
车间主管岗位职责
2013/11/14 职场文书
幼儿教师工作感言
2014/02/14 职场文书
优秀安全员事迹材料
2014/05/11 职场文书
小学生安全责任书
2014/07/25 职场文书
2014年小学重阳节活动策划方案
2014/09/16 职场文书
校园学雷锋广播稿
2014/10/08 职场文书
中国合伙人观后感
2015/06/02 职场文书
python解决12306登录验证码的实现
2021/04/18 Python