开发者社区> 夕阳白雪> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

javascript生成二维码

简介: 摘要:   百度百科上是这样介绍二维码的:二维码(Quick Response Code),又称二维条码,它是用特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形,是所有信息数据的一把钥匙。
+关注继续查看

摘要:

  百度百科上是这样介绍二维码的:二维码(Quick Response Code),又称二维条码,它是用特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形,是所有信息数据的一把钥匙。在现代商业活动中,可实现的应用十分广泛,如:产品防伪/溯源、广告推送、网站链接、数据下载、商品交易、定位/导航、电子商务应用、车辆管理、信息传递等。如今智能手机扫一扫(简称313)功能的应用使得二维码更加普遍,随着国内物联网产业的蓬勃发展,更多的二维码技术应用解决方案被开发,二维码成为移动互联网入口真正成为现实。 

  我们在上网时随处可见的是二维码,那么在前端如何生成二维码呢?今天我就来分享下前端生成二维码。

简介:

  QRCode.js是js的一个库,跨浏览器支持HTML5画布和表格标记在DOM中。我们所使用的就是基于QRCode.js。

浏览器:

IE6~10, Chrome, Firefox, Safari, Opera, Mobile Safari, Android, Windows Mobile, ETC.

jquery-qrcode:

  jquery-qrcode特点:操作简单,体积小,压缩之后只有14k,但是不支持中文编码。

<script src="http://cdn.staticfile.org/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript" src="../jquery.qrcode.min.js"></script>
<div id="qrcode"></div>
<script>
$(function(){
    $('#qrcode').qrcode("http://www.cnblogs.com/xiyangbaixue");
    // 更详细的配置
    // $('#qrcode').qrcode({
    //     text: "http://www.cnblogs.com/xiyangbaixue", // 要编码的字符串
    //     width: 50, // 定义宽度
    //     height: 50, // 定义高度
    //     background: "#ccc", // 背景色
    //     foreground: "red" // 前景色
    // });
})
</script>

 

效果:

 

qrcodejs:

  qrcodejs特点:中文生成的二维码扫描不会出现乱码,且可以选择使用哪种元素来画二维码。

<script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript" src="qrcode.js"></script>
    <div id="qrcode"></div>
    <script>
      new QRCode(document.getElementById("qrcode"), "http://www.cnblogs.com/xiyangbaixue");
      // 或者
      // new QRCode(document.getElementById("qrcode"), {
      //     text: "http://www.cnblogs.com/xiyangbaixue",
      //     width: 50,
      //     height: 50,
      //     background: "#ccc",
      //     foreground: "red"
      // });
    </script>

 

使用svg:

<script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript" src="qrcode.js"></script>
    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
      <g id="qrcode"/>
    </svg>
    <script type="text/javascript">
    var qrcode = new QRCode(document.getElementById("qrcode"), {
        width : 100,
        height : 100,
        useSVG: true
    });
    qrcode.makeCode("http://www.cnblogs.com/xiyangbaixue");
    // qrcode.clear(); // 清除二维码
    </script>

 

效果:

配置参数:

render string

配置用哪个节点元素画二维码,选项有tablesvgcanvas

默认的选择顺序为 canvas -> svg -> table

text string

要编码的字符串

默认:""

width number

二维码的长,单位是px

需要注意的是,当使用table或者svg绘制二维码时,会适当减小,使得能够整除二维码矩阵的维度。

默认:256

height number

二维码的宽,单位是px

需要注意的是,当使用table或者svg绘制二维码时,会适当减小,使得能够整除二维码矩阵的维度。

默认:256

correctLevel number

纠错级别,可取0、1、2、3,数字越大说明所需纠错级别越大

默认:3

background color

背景色

默认:#FFFFFF

foreground color

前景色

默认:#000000

附录:

  二维码生成原理:http://www.thonky.com/qr-code-tutorial/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
利用JavaScript实现二级联动
利用JavaScript实现二级联动 要实现JavaScript二级联动效果,首先要确定需要哪些技术: 二维数组 for in循环 new Option(text,value,true,true) add(option,null) onchange() 表单事件 HTML代码: <!-- <input type="text" id="text"> --> 请选择省份: <select name="" id="provinces"> <!-- <option value="江苏省">江苏省</option>
0 0
JavaScript函数柯里化的实现原理,进来教你完成一个自己的自动实现柯里化方法
JavaScript函数柯里化的实现原理,进来教你完成一个自己的自动实现柯里化方法
0 0
weex-自定义module,实现weex在iOS的本地化,js之间互相跳转,交互,传值(iOS接入weex的最佳方式)
weex-自定义module,实现weex在iOS的本地化,js之间互相跳转,交互,传值(iOS接入weex的最佳方式)
0 0
JS中实现或退出全屏
JS中实现或退出全屏
0 0
前端:JS实现双击table单元格变为可编辑状态
前端:JS实现双击table单元格变为可编辑状态
0 0
【前端算法】JS实现数字千分位格式化
JS实现数字千分位格式化的几种思路,以及它们之间的性能比较
0 0
【前端算法】用JS实现快速排序
理解数组方法里面运用到的算法,splice 和 slice的区别
0 0
【前端算法】javaScript实现二分查找
如何使用JS实现一个合格的二分查找
0 0
+关注
夕阳白雪
前端开发工程师
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Javascript中的函数
立即下载
Javascript异步编程
立即下载
JS零基础入门教程(上册)
立即下载