当前位置:首页 > JavaScript

qrcode js实现

2026-02-01 16:07:59JavaScript

QRCode.js 实现方法

QRCode.js 是一个轻量级的 JavaScript 库,用于生成二维码。以下是实现步骤:

安装 QRCode.js 可以通过 npm 安装或直接引入 CDN 链接:

npm install qrcode

<script src="https://cdn.jsdelivr.net/npm/qrcode@1.5.1/build/qrcode.min.js"></script>

基本用法 在 HTML 中创建一个容器用于显示二维码:

<div id="qrcode"></div>

通过 JavaScript 生成二维码:

qrcode js实现

const qrcode = new QRCode(document.getElementById("qrcode"), {
  text: "https://example.com",
  width: 128,
  height: 128,
  colorDark: "#000000",
  colorLight: "#ffffff",
  correctLevel: QRCode.CorrectLevel.H
});

自定义选项

  • text: 二维码内容(必填)。
  • width/height: 二维码尺寸(默认 256)。
  • colorDark: 二维码深色部分颜色(默认 #000000)。
  • colorLight: 二维码浅色部分颜色(默认 #ffffff)。
  • correctLevel: 容错级别(LMQH)。

动态更新二维码 调用 makeCode 方法更新内容:

qrcode.makeCode("https://new-content.com");

生成二维码图片 使用 toDataURL 生成 Base64 图片:

qrcode js实现

QRCode.toDataURL("https://example.com", {
  width: 200,
  margin: 2
}, (err, url) => {
  if (err) throw err;
  console.log(url); // 输出 Base64 图片 URL
});

注意事项

  • 确保容器有明确的宽度和高度。
  • 在移动端使用时,可通过 CSS 调整二维码尺寸适配屏幕。

高级用法示例

生成带 Logo 的二维码

  1. 先生成普通二维码。
  2. 使用 Canvas 或 DOM 操作在二维码中央叠加 Logo。

响应式设计 通过监听窗口大小变化动态调整二维码尺寸:

window.addEventListener("resize", () => {
  const size = Math.min(window.innerWidth, window.innerHeight) * 0.8;
  qrcode._htOption.width = size;
  qrcode._htOption.height = size;
  qrcode.makeCode(qrcode._htOption.text);
});

QRCode.js 兼容所有现代浏览器,包括 IE6-10 等老旧浏览器。

标签: qrcodejs
分享给朋友:

相关文章

js轮播图实现原理

js轮播图实现原理

轮播图的基本原理 轮播图通过动态切换显示的内容(图片、文本等)实现视觉上的滑动效果。核心原理是利用CSS和JavaScript控制元素的显示与隐藏,或通过变换位置实现滑动动画。 实现方法一:CSS…

js实现瀑布流

js实现瀑布流

实现瀑布流布局 瀑布流布局是一种常见的网页布局方式,常用于图片展示、商品列表等场景。以下是使用 JavaScript 实现瀑布流布局的几种方法。 纯 JavaScript 实现 通过计算元素的位置和…

js钟表实现

js钟表实现

实现JavaScript钟表的基本方法 创建一个简单的JavaScript钟表可以通过以下步骤完成,涵盖数字和模拟两种形式。 数字钟表实现 HTML结构只需一个显示时间的容器: <div i…

js分页实现

js分页实现

分页的基本原理 分页的核心是通过计算当前页码和数据偏移量,从服务器或本地数据中截取对应范围的数据进行展示。通常需要以下参数:当前页码(currentPage)、每页条数(pageSize)、总数据量(…

js实现轮播代码

js实现轮播代码

基础轮播实现 使用HTML、CSS和JavaScript创建一个简单的轮播效果。HTML部分定义轮播容器和图片元素。 <div class="carousel"> <div c…

js 实现全屏

js 实现全屏

使用 requestFullscreen 方法 通过调用元素的 requestFullscreen 方法可以实现全屏。该方法兼容现代浏览器,但不同浏览器可能需要前缀。 const element =…