用二维码扫描

简介: html5中可以使用二维码扫描,也可以从相册中选择二维码识别,代码如下 var ws = null, wo = null; var scan = null, domready = false; // H5 plus事件处理 ...

html5中可以使用二维码扫描,也可以从相册中选择二维码识别,代码如下

        var ws = null, wo = null;
        var scan = null, domready = false;
        // H5 plus事件处理
        function plusReady() {
            if (ws || !window.plus || !domready) {
                return;
            }
            // 获取窗口对象
            ws = plus.webview.currentWebview();
            wo = ws.opener();
            // 开始扫描
            ws.addEventListener('show', function () {
                scan = new plus.barcode.Barcode('bcid');
                scan.onmarked = onmarked;
                scan.start();
            });
            // 显示页面并关闭等待框
            ws.show("pop-in");
            wo.evalJS("closeWaiting()");
        }
        if (window.plus) {
            plusReady();
        } else {
            document.addEventListener("plusready", plusReady, false);
        }
        // 监听DOMContentLoaded事件
        document.addEventListener("DOMContentLoaded", function () {
            domready = true;
            plusReady();
        }, false);
        // 二维码扫描成功
        function onmarked(type, result, file) {
            switch (type) {
                case plus.barcode.QR:
                    type = "QR";
                    break;
                case plus.barcode.EAN13:
                    type = "EAN13";
                    break;
                case plus.barcode.EAN8:
                    type = "EAN8";
                    break;
                default:
                    type = "其它";
                    break;
            }
            result = result.replace(/\n/g, '');
            wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');");
            plus.webview.currentWebview().close();
            back();
        }
        // 从相册中选择二维码图片
        function scanPicture() {
            plus.gallery.pick(function (path) {
                plus.barcode.scan(path, onmarked, function (error) {
                    plus.nativeUI.alert("无法识别此图片");
                });
            }, function (err) {
      
            });
        }

 

作者:Tyler Ning
出处:http://www.cnblogs.com/tylerdonet/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过以下邮箱地址williamningdong@gmail.com  联系我,非常感谢。

目录
相关文章
|
小程序 JavaScript 前端开发
微信小程序 |从零实现酷炫纸质翻页效果
微信小程序 |从零实现酷炫纸质翻页效果
2007 0
微信小程序 |从零实现酷炫纸质翻页效果
|
安全 Android开发 开发者
【软件推荐】屏蔽手机开屏广告
【软件推荐】屏蔽手机开屏广告
|
自然语言处理 Python
|
移动开发 安全 JavaScript
h5网页调起扫一扫最简单的方法
h5网页调起扫一扫最简单的方法
861 0
|
JavaScript 前端开发
仿抖音短视频系统源码,点击实现波纹效果
仿抖音短视频系统源码,点击实现波纹效果
1861 0
|
算法 Android开发
仿网易云音乐播放界面
前言 网易云音乐是一款非常优秀的音乐播放器,尤其是播放界面,使用唱盘机风格,显得格外古典优雅。笔者出于学习与挑战的想法,思考播放界面背后的实现原理,并写了一个小程序。
2412 0
仿抖音注册界面制作
话说上次完成了仿抖音我的界面制作之后,今天抽空又把注册界面给做了,还是做了些小改动,将第三方登录去掉了 注册 还是老规矩直接奉上psd源码:仿抖音注册界面psd源码 个人博客https://myml666.
1274 0
类似微信图片浏览,常见应用场景如微信朋友圈照片九宫格和微信聊天图片预览
本项目受Google官方demo Zooming a View 启发,实现了点击小图放大至全屏预览,退出全屏恢复至原来位置这两个过程的动画过渡。 常见应用场景如微信朋友圈照片九宫格和微信聊天图片预览,某些手机系统相册等viewpager图片查看 缩放 拖拽下拉缩小退出(效果同微信图片浏览) 特点1.支持自定义图片加载框架。
2245 0