llqrcode.js具有扫描二维码功能,用来进行从图片中识别二维码,可解析二维码的信息。

直接上代码

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><title>llqrcode识别二维码</title><script src="llqrcode.js"></script><script>function getUrl(e,param){analyticCode.getUrl(param,e,function(url,param){document.querySelector("#uploadQrcode").style.display = "none";document.querySelector("#uploadQrcode_preview").innerHTML ="<img src='"+param+"' />";document.querySelector("#qrcodeUrl").innerHTML ="识别内容:"+ url;document.querySelector("#rescan").style.display = "block";})}let getObjectURL = function(file){let url = null ; if (window.createObjectURL!=undefined) {url = window.createObjectURL(file) ;} else if (window.URL!=undefined) {url = window.URL.createObjectURL(file) ;} else if (window.webkitURL!=undefined) {url = window.webkitURL.createObjectURL(file) ;}return url ;}window.analyticCode = {getUrl : function(type,elem,fn){let url = null,src = null;if(type === 'img-url'){url = elem.src;}else if(type === 'file-url' && elem.files.length > 0){url = getObjectURL(elem.files[0]);}qrcode.decode(url);qrcode.callback = function(imgMsg){fn(imgMsg,url);}}}</script><style>h3{text-align: center;margin-top: 100px;}#uploadQrcode{width: 80px;height: 80px;margin:20px auto 0;border: 2px dashed #ccc;border-radius: 20px;font-size: 25px;line-height: 80px;text-align: center;color: #ccc;position: relative;cursor: pointer;}#selectQrcode{position: absolute;top: 0;left: 0;width: 100%;height: 100%;opacity: 0;cursor: pointer;}#qrcodeUrl{text-align: center;margin-top: 15px;}#uploadQrcode_preview{width: 80px;height: 80px;margin:20px auto 0;}#uploadQrcode_preview img{width: 80px;height: 80px;}#rescan{text-align: center;text-decoration: none;color: #666;font-size: 15px;margin-top: 15px;display: none;}</style>
</head>
<body><h3>选择一张二维码图片</h3><div id="uploadQrcode"><span>+</span><input type="file" id="selectQrcode" onChange="getUrl(this,'file-url')" /></div><!-- 图片预览 --><div id="uploadQrcode_preview"></div><!-- 识别结果 --><p id="qrcodeUrl"></p><a href="" id="rescan">重新识别</a>
</body>
</html>

作者:TANKING

llqrcode.js下载:

javascript - llqrcode.js识别二维码,解析二维码信息_个人文章 - SegmentFault 思否

llqrcode.js识别二维码,解析二维码信息相关推荐

  1. 【深度学习模型】智云视图中文车牌识别源码解析(二)

    [深度学习模型]智云视图中文车牌识别源码解析(二) 感受 HyperLPR可以识别多种中文车牌包括白牌,新能源车牌,使馆车牌,教练车牌,武警车牌等. 代码不可谓不混乱(别忘了这是职业公司的准产品级代码 ...

  2. Mobx 源码解析 二(autorun)

    前言 我们在Mobx 源码解析 一(observable)已经知道了observable 做的事情了, 但是我们的还是没有讲解明白在我们的Demo中,我们在Button 的Click 事件中只是对ba ...

  3. erlang下lists模块sort(排序)方法源码解析(二)

    上接erlang下lists模块sort(排序)方法源码解析(一),到目前为止,list列表已经被分割成N个列表,而且每个列表的元素是有序的(从大到小) 下面我们重点来看看mergel和rmergel ...

  4. Kubernetes学习笔记之Calico CNI Plugin源码解析(二)

    女主宣言 今天小编继续为大家分享Kubernetes Calico CNI Plugin学习笔记,希望能对大家有所帮助. PS:丰富的一线技术.多元化的表现形式,尽在"360云计算" ...

  5. android网络框架retrofit源码解析二

    注:源码解析文章参考了该博客:http://www.2cto.com/kf/201405/305248.html 前一篇文章讲解了retrofit的annotation,既然定义了,那么就应该有解析的 ...

  6. Thrift源码解析(二)序列化协议

    概述 对于一个RPC框架,定义好网络数据的序列化协议是最基本的工作,thrift的序列化协议主要包含如下几种: TBinaryProtocol TCompactProtocol TJSONProtoc ...

  7. 源码 解析_List源码解析

    点击上方「10分钟编程」关注我呦 让我们在一起每天「博学」一点点,成为更好的自己! List源码解析 本篇文章有点长,所以先列个目录 List源码解析 1.ArrayList 2.LinkedList ...

  8. yolov3之pytorch源码解析_springmvc源码架构解析之view

    说在前面 前期回顾 sharding-jdbc源码解析 更新完毕 spring源码解析 更新完毕 spring-mvc源码解析 更新完毕 spring-tx源码解析 更新完毕 spring-boot源 ...

  9. Kafka核心源码解析 - KafkaController源码解析

    在进入源码解析之前,我先来介绍一些KafkaController在Kafka集群中的作用. (1)负责监听zookeeper上所有的元数据变更请求: (2)负责topic的partition迁移任务分 ...

最新文章

  1. 目标检测算法Faster R-CNN简介
  2. Docker编排工具Fig介绍
  3. AI一分钟 | 今天,百度又多了一个好基友华为,还互赠了信物;腾讯AI Lab“肢体动作追踪”技术造出了个“AI 尬舞机”
  4. 安装sql2008 enterprise (English正式版)图解
  5. Windows server backup笔记 WSB
  6. golang 调用库函数错误 cannot refer to unexported name
  7. 取代C语言的标准输入输出:cin 和 cout【C++标准输入输出】
  8. C语言再学习 -- 再论数组和指针
  9. C#中实现js中的eval函数功能
  10. STM32F103系统滴答计时器
  11. 小程序 云函数 python_小程序云函数
  12. .NET下的开发者们正在继承计算机早期时代伟大的黑客精神
  13. java大嘴鱼游戏代码_Java小游戏吃豆豆源代码
  14. excel转word_excel怎么转word?常用方法合集,看你使用哪一种
  15. cannot connect to X server
  16. Android:系统日历同步日程
  17. BYD精制项目除铜工艺去除铜离子
  18. 日天的终生大事(dp)
  19. Linux du(disk usage)命令详解
  20. AtCoder 001 A BBQ Easy

热门文章

  1. 图书馆小程序—Alpha迭代—第七周会议记录
  2. Android 系统默认铃声修改 添加删除铃声
  3. 更改设置让Cheat Engine搜索安卓模拟器里的数据
  4. esxi服务器更换硬盘,ESXi下磁盘分区删除步骤详解
  5. Camera4 MTK camera驱动结构介绍
  6. js实现简单的视频播放
  7. 简易购物车实体类的设计
  8. 均分纸牌(线性、环形、二维)
  9. 爬虫_app 1.1 导学
  10. 游戏化思维——核心驱动力