用QRCode.js生成页面的二维码

2021-06-29
329次阅读
一条评论

如果说二维码生成是一个简单的事情,那么使用js生成就是更加简单的一件事了。

以前生成二维码都是找别人的api接口使用的,自从会了php之后,我自己也用php的开源类写了一个,具体可以查看 https://cfhcx.com/400/ 这篇文章,效率还行。但是没有页面缓存,只能搭配 cdn 来长时间的保存已经生成的图片,这虽然可行,但是人一多,付出的成本就大了,所以还是不可靠。

其实很多开发的功能最好的方式其实就是在用户的客户端完成,这样才是最高效的。我也看过很多已经上线的网站,比如,文章页面可以先在用户的客户端加载一个 js 解密解析文件,之后用 js 文件获取我这篇文章的完整数据。这样做的好处就是减少数据库读取,减少用户等待时间。坏处就是SEO差,当然,他们不是做SEO的,只是单纯的减少资源消耗而已。

二维码也是一样,可以用 客户端 完成就不要用服务端,原因就是追求高效。

啥是QRCode.js?

QRCode.js 是一个用于生成二维码的 JavaScript 库。主要是通过获取 DOM 的标签,再通过 HTML5 Canvas 绘制而成,不依赖任何库。

如何使用:

<div id="qrcode"></div>
<script type="text/javascript">
new QRCode(document.getElementById("qrcode"), "http://www.runoob.com");  // 设置要生成二维码的链接
</script>

或者使用一些可选参数设置:

var qrcode = new QRCode("test", {
    text: "http://www.runoob.com",
    width: 128,
    height: 128,
    colorDark : "#000000",
    colorLight : "#ffffff",
    correctLevel : QRCode.CorrectLevel.H
});

同样我们可以使用以下方法:

qrcode.clear(); // 清除代码
qrcode.makeCode("http://www.w3cschool.cc"); // 生成另外一个二维码

实例代码:

<input id="text" type="text" value="http://www.runoob.com" /><br />
<div id="qrcode"></div>
var qrcode = new QRCode("qrcode");

function makeCode () {      
    var elText = document.getElementById("text");
    
    if (!elText.value) {
        alert("Input a text");
        elText.focus();
        return;
    }
    
    qrcode.makeCode(elText.value);
}

makeCode();

$("#text").
on("blur", function () {
    makeCode();
}).
on("keydown", function (e) {
    if (e.keyCode == 13) {
        makeCode();
    }
});

引入js库:

js库下载地址:
[button url="https://mxooo.lanzoui.com/iHMzOqt4uyd" types="down"]蓝奏云下载[/button]

正文结束
居烽
版权声明:本站原创文章,由 居烽 于2021-06-29发表,共计1347字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(一条评论)
验证码
2021-06-29 05:53:39 回复

很不错的js代码了

 Windows  Chrome  中国上海上海市电信