ホームページ  >  記事  >  ウェブフロントエンド  >  jquery.qrcode.js を使用して QR コード プラグインを生成する

jquery.qrcode.js を使用して QR コード プラグインを生成する

高洛峰
高洛峰オリジナル
2017-01-20 14:58:331253ブラウズ

QR コード アプリケーションは私たちの生活や仕事に浸透しています。携帯電話で QR コードを「スキャン」するだけで、対応する情報を取得できるため、販売者を理解したり、買い物をしたり、映画を見たりするのに便利です。この記事では、jquery ベースの QR コード生成プラグイン qrcode を紹介します。このプラグインをページ上で呼び出すと、対応する QR コードを生成できます。

1.qrcodeは実際にはjQueryを使用してグラフィックレンダリングと描画を実装し、キャンバス(HTML5)とテーブルをサポートしています

githubソースコードアドレス: https://github.com/jeromeetienne/jquery-qrcode

パラメータの説明:

render : "canvas", //レンダリング方法を設定します

width : 256, //幅を設定します

height : 256, //高さを設定します

typeNumber : -1, //計算モード

rightLevel : 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画图
 $(&#39;#code&#39;).qrcode(&#39;http://blog.csdn.net/u011127019&#39;);
</script>

jquery.qrcode.js を使用して QR コード プラグインを生成する

簡単な例 2:

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

簡単な例 3 (中国語サポート):
テストしたところ、中国語のコンテンツが含まれていることがわかりましたQRコードが認識できませんでした QRコードは、いろいろ調べた結果、jquery-qrcodeではエンコード変換にcharCodeAt()メソッドを使用していることが分かりました。このメソッドはデフォルトで Unicode エンコードを取得します。中国語のコンテンツがある場合は、QR コードを生成する前に文字列を UTF-8 に変換してから、QR コードを生成する必要があります。

<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;
 }
  
 $(&#39;#code&#39;).qrcode({
  text: toUtf8(&#39;我是tianma&#39;),
  width: 150,
  height: 150
 });
  
 //就目前 微信/支付宝等 不识别其他颜色的二维码
 $(&#39;#code&#39;).qrcode({
  text: toUtf8(&#39;我是tianma&#39;),
  width: 150,
  height: 150,
  background: &#39;#f00&#39;,
  foreground: &#39;#0f0&#39;
 });
</script>

例4:

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

jquery.qrcode.jsを使ってQRコードを生成するプラグインの内容を紹介します。今後とも私たちの Web サイトにご注目ください。

jquery.qrcode.js を使用して QR コード プラグインを生成することに関するその他の記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。