使用jquery插件qrcode生成二维码


Posted in Javascript onOctober 22, 2015

二维码应用已经渗透到我们的生活工作当中,您只需要用手机对着二维码“扫一扫”即可获得所对应的信息,方便我们了解商家、购物、观影等等。本文将介绍一款基于jquery的二维码生成插件qrcode,在页面中调用该插件就能生成对应的二维码。
qrcode其实是通过使用jQuery实现图形渲染,画图,支持canvas(HTML5)和table两种方式,您可以到获取最新的代码。

如何使用
1、首先在页面中加入jquery库文件和qrcode插件。

<script type="text/javascript" src="jquery.js"></script> 
<script type="text/javascript" src="jquery.qrcode.min.js"></script>

2、在页面中需要显示二维码的地方加入以下代码:

<div id="code"></div>

3、调用qrcode插件。
qrcode支持canvas和table两种方式进行图片渲染,默认使用canvas方式,效率最高,当然要浏览器支持html5。直接调用如下:

$('#code').qrcode("https://3water.com"); //任意字符串

您也可以通过以下方式调用:

$("#code").qrcode({ 
  render: "table", //table方式 
  width: 200, //宽度 
  height:200, //高度 
  text: "https://3water.com" //任意内容 
});

这样就可以在页面中直接生成一个二维码,你可以用手机“扫一扫”功能读取二维码信息。
识别中文
我们试验的时候发现不能识别中文内容的二维码,通过查找多方资料了解到,jquery-qrcode是采用charCodeAt()方式进行编码转换的。而这个方法默认会获取它的Unicode编码,如果有中文内容,在生成二维码前就要把字符串转换成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;  
}

以下示例:

var str = toUtf8("三水点靠木!"); 
$('#code').qrcode(str);

现在网上制作二维码的教程特别多,大家要学会灵活运用,选择自己最喜欢的方法掌握二维码的制作技巧。

Javascript 相关文章推荐
js程序中美元符号$是什么
Jun 05 Javascript
探索Emberjs制作一个简单的Todo应用
Nov 07 Javascript
js 调用父窗口的具体实现代码
Jul 15 Javascript
Javascript之this关键字深入解析
Nov 12 Javascript
js 去除字符串第一位逗号的方法
Jun 07 Javascript
javascript 广告移动特效的实现代码
Jun 25 Javascript
Vue 仿百度搜索功能实现代码
Feb 16 Javascript
微信小程序左右滑动的实现代码
Dec 15 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
Feb 23 Javascript
微信小程序使用map组件实现解析经纬度功能示例
Jan 22 Javascript
浅谈JavaScript中this的指向问题
Jul 28 Javascript
Javascript var变量删除原理及实现
Aug 26 Javascript
JavaScrip调试技巧之断点调试
Oct 22 #Javascript
浅析JavaScript 调试方法和技巧
Oct 22 #Javascript
JS+CSS实现的竖向简洁折叠菜单效果代码
Oct 22 #Javascript
浅谈node.js中async异步编程
Oct 22 #Javascript
JS实现不使用图片仿Windows右键菜单效果代码
Oct 22 #Javascript
JS实现新浪博客左侧的Blog管理菜单效果代码
Oct 22 #Javascript
JS+CSS实现大气清新的滑动菜单效果代码
Oct 22 #Javascript
You might like
PHP下载远程文件到本地存储的方法
2015/03/24 PHP
php生成word并下载代码实例
2019/03/15 PHP
PHP开发的文字水印,缩略图,图片水印实现类与用法示例
2019/04/12 PHP
Jqyery中同等与js中windows.onload的应用
2011/05/10 Javascript
js将当前时间格式转换成时间搓(自写)
2013/09/26 Javascript
Javascript基础教程之关键字和保留字汇总
2015/01/18 Javascript
JavaScript实现将xml转换成html table表格的方法
2015/04/17 Javascript
Node.js中的process.nextTick使用实例
2015/06/25 Javascript
JS建造者模式基本用法实例分析
2015/06/30 Javascript
利用JavaScript脚本实现滚屏效果的方法
2015/07/07 Javascript
JS组件中bootstrap multiselect两大组件较量
2016/01/26 Javascript
原生JS实现《别踩白块》游戏(兼容IE)
2017/02/20 Javascript
使用vue框架 Ajax获取数据列表并用BootStrap显示出来
2017/04/24 Javascript
详解nodejs微信jssdk后端接口
2017/05/25 NodeJs
利用Javascript开发一个二维周视图日历
2017/12/14 Javascript
使用vue-cli创建项目的图文教程(新手入门篇)
2018/05/02 Javascript
angular2组件中定时刷新并清除定时器的实例讲解
2018/08/31 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
Node.js API详解之 tty功能与用法实例分析
2020/04/27 Javascript
[02:25]DOTA2英雄基础教程 生死判决瘟疫法师
2013/12/06 DOTA
详解python中xlrd包的安装与处理Excel表格
2016/12/16 Python
python 接口测试response返回数据对比的方法
2018/02/11 Python
快速解决安装python没有scripts文件夹的问题
2018/04/03 Python
python使用adbapi实现MySQL数据库的异步存储
2019/03/19 Python
python3 使用traceback定位异常实例
2020/03/09 Python
HTML5的文档结构和新增标签完全解析
2017/04/21 HTML / CSS
大学生最新职业生涯规划书范文
2014/01/12 职场文书
小加工厂管理制度
2014/01/21 职场文书
祖国在我心中演讲稿450字
2014/09/05 职场文书
2015年初中元旦晚会活动总结
2014/11/28 职场文书
护士辞职信怎么写
2015/02/27 职场文书
2015年检察院个人工作总结
2015/05/20 职场文书
西安事变观后感
2015/06/12 职场文书
采购部2015年度工作总结
2015/07/24 职场文书
乡镇干部学习心得体会
2016/01/23 职场文书
如何解决goland,idea全局搜索快捷键失效问题
2022/04/03 Golang