使用jquery.qrcode.js生成二维码插件


Posted in Javascript onOctober 17, 2016

二维码应用已经渗透到我们的生活工作当中,您只需要用手机对着二维码“扫一扫”即可获得所对应的信息,方便我们了解商家、购物、观影等等。本文将介绍一款基于jquery的二维码生成插件qrcode,在页面中调用该插件就能生成对应的二维码。

1.qrcode其实是通过使用jQuery实现图形渲染,画图,支持canvas(HTML5)和table两种方式,

github源码地址:https://github.com/jeromeetienne/jquery-qrcode

参数说明:

  • render   : "canvas",//设置渲染方式   
  • width       : 256,     //设置宽度   
  • height      : 256,     //设置高度   
  • typeNumber  : -1,      //计算模式   
  • correctLevel    : QRErrorCorrectLevel.H,//纠错等级   
  • background      : "#ffffff",//背景颜色   
  • foreground      : "#000000" //前景颜色   

2.使用实例:

插件引用:

<script src="../Js/jquery-1.11.3.min.js"></script> 
 <script src="../Js/jquery-qrcode-master/jquery.qrcode.min.js"></script>

简单实例1:

<div id="code"></div> 
<script> 
 //任意字符串 生成二维码 
 //默认使用Canvas画图 
 $('#code').qrcode('http://blog.csdn.net/u011127019'); 
</script>

使用jquery.qrcode.js生成二维码插件

简单实例2:

<div id="code"></div> 
<script> 
 //table 模式兼容 IE低版本 
 $('#code').qrcode({ 
  render: 'table', 
  width: 100, 
  height: 100, 
  text: 'http://blog.csdn.net/u011127019' 
 }); 
</script>

简单实例3(中文支持):

我们试验的时候发现不能识别中文内容的二维码,通过查找多方资料了解到,jquery-qrcode是采用charCodeAt()方式进行编码转换的。而这个方法默认会获取它的Unicode编码,如果有中文内容,在生成二维码前就要把字符串转换成UTF-8,然后再生成二维码。

<div id="code"></div> 
<script> 
 //如果内容中有中文,在生成二维码钱就要把字符串转换成utf-8 
 function toUtf8(str) { 
  var out, i, len, c; 
  out = ""; 
  len = str.length; 
  for (i = 0; i < len; i++) { 
   c = str.charCodeAt(i); 
   if ((c >= 0x0001) && (c <= 0x007F)) { 
    out += str.charAt(i); 
   } else if (c > 0x07FF) { 
    out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F)); 
    out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F)); 
    out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F)); 
   } else { 
    out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F)); 
    out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F)); 
   } 
  } 
  return out; 
 } 
 
 $('#code').qrcode({ 
  text: toUtf8('我是tianma'), 
  width: 150, 
  height: 150 
 }); 
 
 //就目前 微信/支付宝等 不识别其他颜色的二维码 
 $('#code').qrcode({ 
  text: toUtf8('我是tianma'), 
  width: 150, 
  height: 150, 
  background: '#f00', 
  foreground: '#0f0' 
 }); 
</script>

实例4:

//text 属性的值长度不能太长,最大字节数 10208 
//text 字符串太长 微信/支付宝等扫一扫无法识别,微博识别内容更多 
//微博扫一扫:大约200 字以内,微信扫一扫:大约 160字以内,支付宝扫一扫:大约130字符以内 
$('#code').qrcode({ 
 text: toUtf8('SignalR 是 ASP.NET 团队正在开发的一个 Microsoft .NET Framework 库和 jQuery 插件,可能包括在以后版本的 ASP.NET 平台中。 它提供了一些前景极为光明的功能,而这些功能正是,并且是越来越多的,当前不曾具有的,'), 
 width: 150, 
 height: 150 
});

希望本文所述对你有所帮助,使用jquery.qrcode.js生成二维码插件内容就给大家介绍到这里了。希望大家继续关注我们的网站!

Javascript 相关文章推荐
关于__defineGetter__ 和__defineSetter__的说明
May 12 Javascript
jquery自定义属性(类型/属性值)
May 21 Javascript
javascript禁制后退键(Backspace)实例代码
Nov 15 Javascript
JavaScript获取flash对象与网上的有所不同
Apr 21 Javascript
js 去除字符串第一位逗号的方法
Jun 07 Javascript
jQuery实现获取绑定自定义事件元素的方法
Dec 02 Javascript
JS onkeypress兼容性写法详解
Apr 27 Javascript
jQuery.cookie.js实现记录最近浏览过的商品功能示例
Jan 23 Javascript
Element UI框架中巧用树选择器的实现
Dec 12 Javascript
vue微信分享的实现(在当前页面分享其他页面)
Apr 16 Javascript
JS监听组合按键思路及实现过程
Apr 17 Javascript
一篇文章让你搞懂JavaScript 原型和原型链
Nov 23 Javascript
js浏览器html5表单验证
Oct 17 #Javascript
使用开源工具制作网页验证码的方法
Oct 17 #Javascript
jQuery 实现ajax传入参数含有特殊字符的方法总结
Oct 17 #Javascript
JavaScript中的ajax功能的概念和示例详解
Oct 17 #Javascript
JQuery中解决重复动画的方法
Oct 17 #Javascript
bootstrap读书笔记之CSS组件(上)
Oct 17 #Javascript
原生JavaScript制作计算器
Oct 16 #Javascript
You might like
PHP使用内置dir类实现目录遍历删除
2015/03/31 PHP
使用PHP生成二维码的方法汇总
2015/07/22 PHP
ThinkPHP 模板引擎使用详解
2017/05/07 PHP
Laravel中日期时间处理包Carbon的简单使用
2017/09/21 PHP
PHP的PDO错误与错误处理
2019/01/27 PHP
PHP文件打开关闭及读写操作示例解析
2020/08/06 PHP
js中call与apply的用法小结
2013/12/28 Javascript
javascript使用百度地图api和html5特性获取浏览器位置
2014/01/10 Javascript
kindeditor修复会替换script内容的问题
2015/04/03 Javascript
jQuery实现文本框输入同步的方法
2015/06/20 Javascript
Javascript随机标签云代码实例
2016/06/21 Javascript
详解nodejs实现本地上传图片并预览功能(express4.0+)
2017/06/28 NodeJs
Angular.js初始化之ng-app的自动绑定与手动绑定详解
2017/07/31 Javascript
VueJs 将接口用webpack代理到本地的方法
2017/11/27 Javascript
react-native动态切换tab组件的方法
2018/07/07 Javascript
Vue生命周期activated之返回上一页不重新请求数据操作
2020/07/26 Javascript
JavaScript封装单向链表的示例代码
2020/09/17 Javascript
详解Vue的mixin策略
2020/11/19 Vue.js
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
TensorFlow实现MLP多层感知机模型
2018/03/09 Python
django数据库自动重连的方法实例
2019/07/21 Python
对Python中一维向量和一维向量转置相乘的方法详解
2019/08/26 Python
多个python文件调用logging模块报错误
2020/02/12 Python
Pycharm如何运行.py文件的方法步骤
2020/03/03 Python
pyspark给dataframe增加新的一列的实现示例
2020/04/24 Python
总结python 三种常见的内存泄漏场景
2020/11/20 Python
为什么要优先使用同步代码块而不是同步方法?
2013/01/30 面试题
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
SQL Server面试题
2016/10/17 面试题
实习单位鉴定评语
2014/04/26 职场文书
2014年信贷员工作总结
2014/11/18 职场文书
志愿者事迹材料
2014/12/26 职场文书
python缺失值的解决方法总结
2021/06/09 Python
分析并发编程之LongAdder原理
2021/06/29 Java/Android
JavaScript数组 几个常用方法总结
2021/11/11 Javascript
Android存储中最基本的文件存储方式
2022/04/30 Java/Android