jquery.qrcode.js二维码自动生成插件

jquery.qrcode.js二维码自动生成插件

jquery.qrcode.js是一个能够在浏览器端生成矩形二维码QRCode的jque
0
  • 详情内容
  • 留言点评

jquery.qrcode.js 是一个能够在浏览器端生成矩形二维码QRCode的jquery插件 ,使用它可以很方便的在页面上自动生成二维条码。最新版本已支持canvas(html5)、image(base64)、div(替换了早期table方式)三种渲染方式,默认使用canvas方式,效率最高,需要浏览器支持HTML5,好在除了老旧IE浏览器现在大多数都支持了。

下面我们直接来看一个应用实例:

<script src="http://apps.bdimg.com/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/jquery.qrcode/1.0/jquery.qrcode.min.js"></script>
<script>
$(function(){
   $('#qrcode').qrcode("http://www.yiwuku.com");//最简单无参数应用
})
</script>
<div id="qrcode"></div>

像许多插件一样,jquery.qrcode.js也有一些实用的api设置项,为了更直观理解,我们再来看一个带参数设置的实例:

<script src="http://apps.bdimg.com/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="https://larsjung.de/jquery-qrcode/latest/jquery-qrcode-0.14.0.js"></script>
<script>
$(function(){
    $("#qrcode").qrcode({ 
        render: "image", //img渲染方式 
        width: 200, //宽度(或者直接用size参数同时定义宽高)
        height:200, //高度
        ecLevel: 'L', //纠错级别:'L','M','Q'或'H'
        text: "www.yiwuku.com" //内容 
    }); 
})
</script>
<div id="qrcode"></div>

需要注意的是,插件不同版本设置参数可能存在差别,更多参数建议查看官方演示,可以逐项在线调试查看效果。

可能因为是德国人写的缘故,该插件对中文支持还不够友好。代码不分国界,但语言编码始终存在差别,关于包含中文内容这里也有两种解决方法:

$("#qrcode").qrcode(encodeURI("http://中文.中文"));//使用encodeURI函数进行转码

或者:

<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 () {  

            $("#qrcode").qrcode(utf16to8("今天天气不错"));  

        })      

    </script>

欢迎点评!也可以是问题反馈和建议

支持Ctrl+Enter提交
暂无留言,快抢沙发!
0

真心很赞,必须打赏!嗯,以资鼓励~

点此打赏

99%看过的人还会看