使用jquery-qrcode生成二維碼
先簡單說一下jquery-qrcode,這個開源的三方庫qrcode.js 是實現二維碼數據計算的核心類, jquery.qrcode.js 是把它用jquery方式封裝起來的,用它來實現圖形渲染,其實就是畫圖(支持canvas和table兩種方式)<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ";
<html xmlns=";
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>使用jquery-qrcode生成二維碼,支持中文</title>
<script src="jquery-1.10.2.js"></script>
<script src="jquery.qrcode.js"></script>
<script type="text/javascript">
function utf16to8(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;
}
$(function () {
jQuery('#output').qrcode({size:'500',correctLevel:0,text:utf16to8(");
})
</script>
</head>
<body>
<div id="output" style="margin-left:200px;"></div>
</body>
</html></pre></span>
經過簡單實踐,
使用canvas方式渲染性能還是非常不錯的,但是如果用table方式,性能不太理想,特別是IE9以下的瀏覽器,所以需要自行優化一下渲染table的方式,這里就不細述了。
jquery-1.10.2.js 和 jquery.qrcode.js 到網上下載,引入運行即可看到效果,簡單實用。
來自:http://my.oschina.net/superkangning/blog/353804