首页/技术/文章阅读

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

技术 2021-06-29 33 1
如果说二维码生成是一个简单的事情,那么使用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"), "https://www.runoob.com");  // 设置要生成二维码的链接
</script>
或者使用一些可选参数设置:
var qrcode = new QRCode("test", {
    text: "https://www.runoob.com",
    width: 128,
    height: 128,
    colorDark : "#000000",
    colorLight : "#ffffff",
    correctLevel : QRCode.CorrectLevel.H
});
同样我们可以使用以下方法:
qrcode.clear(); // 清除代码
qrcode.makeCode("https://www.w3cschool.cc"); // 生成另外一个二维码

实例代码:

<input id="text" type="text" value="https://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]

正文结束

zblog免费可用的文件超级缓存插件KelSuperCache国内互联网大佬的Team Blogs

评论区

刷百度指数 · 17***@qq.com1楼

很不错的js代码了