用二维码扫描

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) {

      

            });

        }

 

你可能感兴趣的:(二维码)