jquery.qrcode插件生成二维码实例

如何使用

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("http://www.111cn.net"); //任意字符串

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

 代码如下 复制代码

$("#code").qrcode({     
  render: "table", //table方式      
  width: 200, //宽度      
  height:200, //高度      text: "www.111cn.net" //任意内容 });

这样就可以在页面中直接生成一个二维码,你可以用手机“扫一扫”功能读取二维码信息。

识别中文

我们试验的时候发现不能识别中文内容的二维码,通过查找多方资料了解到,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);

英文是没有问题,如果是中文,一般情况下Unicode是UTF-16实现,长度2位,而UTF-8编码是3位,这样二维码的编解码就不匹配了。

解决方式当然是,在二维码编码前把字符串转换成UTF-8

时间: 2024-09-12 20:31:30

jquery.qrcode插件生成二维码实例的相关文章

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

二维码应用已经渗透到我们的生活工作当中,您只需要用手机对着二维码"扫一扫"即可获得所对应的信息,方便我们了解商家.购物.观影等等.本文将介绍一款基于jquery的二维码生成插件qrcode,在页面中调用该插件就能生成对应的二维码. 1.qrcode其实是通过使用jQuery实现图形渲染,画图,支持canvas(HTML5)和table两种方式, github源码地址:https://github.com/jeromeetienne/jquery-qrcode 参数说明: render 

jquery.qrcode.js 生成二维码后,扫描软件无法扫描

问题描述 jquery.qrcode.js生成二维码后,如果生成的数据多,扫描软件无法扫描,如果数据较少,则可以扫描.有没有遇到这样的情况? 解决方案 解决方案二:这个原因是你的像素跟不上,扫描的原理是通过视频扫描的,你把你的二维码长度和宽度扩大就可以扫描了.解决方案三:引用1楼gefangliang的回复: 这个原因是你的像素跟不上,扫描的原理是通过视频扫描的,你把你的二维码长度和宽度扩大就可以扫描了. 放大了,也还是扫描不了解决方案四:那就放的再大些,不够大.我也遇到过和你一模一样的情况,最

jquery插件qrcode在线生成二维码

  jquery插件qrcode在线生成二维码          jquery.qrcode是一个强大的jquery的插件,可以用来二维码图形的渲染,用于生成二维码,非常的实用,需要的朋友参考下. 随着移动互联网的发展,二维码现在应用得越来越广泛了,随手扫扫就可以浏览网站.加个好友什么的,比起手工输入真的是方便太多了. 前期做了一个综合测评系统,考虑逐步实现移动化,一长串的IP地址用户输入也不方便,借助二维码的话,用户拿起手机扫扫就可以直接进入系统. 基于这个应用场景,就上网研究下了网站二维码的

yii+phpqrcode生成二维码实例

以前我们讲过一些关于用phpqrcode生成二维码的文章,下面我们先列出来 php利用PHP QR Code生成二维码(带logo) PHP生成二维码(使用PHP QR Code二维码生成类库) 利用phpqrcode生成二维码实例代码 超简单PHP生成二维码实例 下面我们来讲讲yii整合phpqrcode生成二维码的实例. 1,先到官网下载包  http://phpqrcode.sourceforge.net/ 下载官网提供的类库后,只需要使用phpqrcode.php就可以生成二维码了,当然

C#利用QrCode.Net生成二维码(Qr码)的方法_C#教程

现在网上很多应用都是用二维码来分享网址或者其它的信息.尤其在移动领域,二维码更是有很大的应用场景.因为项目的需要,需要在网站中增加一个生成二维码分析网址的功能,在谷歌大幅度抽筋的情况下无奈使用百度.百度N多,找到一些项目,但是可用性不强.(有一个项目是用VS2005开发的,在2010中调试不开.)终于在codeplex上找到一个"神器",这个"神器"可以很方便的生成二维码,速度那是相当的快,并且可支持中文,遵从MIT协议. QrCode.Net是一个使用C#编写的用

jquery插件qrcode在线生成二维码_jquery

随着移动互联网的发展,二维码现在应用得越来越广泛了,随手扫扫就可以浏览网站.加个好友什么的,比起手工输入真的是方便太多了. 前期做了一个综合测评系统,考虑逐步实现移动化,一长串的IP地址用户输入也不方便,借助二维码的话,用户拿起手机扫扫就可以直接进入系统. 基于这个应用场景,就上网研究下了网站二维码的实现方式,归纳起来有以下两种: 1.借助一些二维码生成网站或者二维码生成器生成二维码图片,然后挂在网站上,如码云 QR-Code (二维码) 在线生成器 优点:开发成本为零,能够快速实现多样化的二维

超简单PHP生成二维码实例

PHP生成二维码的方式有多种,可以利用google开放的API,可以利用php QR Code类库生成,本文着重介绍使用php QR Code类库来生成二维码. 1.代码包下载地址:http://sourceforge.net/projects/phpqrcode/ 2.下载下来的压缩包里面有很多示例,可以自行研究,下面给出一个简单的使用案例:  代码如下 复制代码 include "phpqrcode/phpqrcode.php"; $data='http://www.111cn.n

QRCode.js 生成二维码

之前朋友问我关于二维码的,当时为了帮他我就去问问了前端的怎么编写的二维码.现在刚好我的项目里也需要设置二维码,刚好用上了.嘻嘻! QRCode.js 是一个用于生成二维码图片的插件. http://code.ciaoca.com/javascript/qrcode/  去这里看吧! 我朋友用的是java编写的.很棒的! 1 package twoDimensionCode; 2 3 import java.awt.Color; 4 import java.awt.Graphics2D; 5 im

分享ASP.NET用ThoughtWorks.QRCode和QrCode.Net生成二维码两种方式

最近做项目遇到生成二维码的问题,发现网上用的最多的是ThoughtWorks.QRCode和QrCode.Net两种方式.访问官网看着例子写了两个Demo,使用过程中发现两个都挺好用的,ThoughtWorks.QRCode的功能更多一些,但是dll文件有6兆,QrCode.Net只有400多K,大家根据自己的需要选择吧.附上代码仅供参考. ThoughtWorks.QRCode:  代码如下 复制代码 private void CreateQrcode(string nr) {     Bit