H5 识别条形码

1. demo下载

链接: https://pan.baidu.com/s/1gqK3z3BxtYWp9U2-T3VWSg

提取码: 3mq2

2. 支持拍照识别和照片上传识别

3. 距离越近识别度越好

4. 代码示例

<!DOCTYPE html PUBLIC "-//W3C//DTD html 4.0 Transitional//EN">
<html>
<head lang=en>
<title>条形码扫描示例</title>
<meta content="text/html; charset=UTF-8" http-equiv=Content-Type>
<meta name=viewport content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0;">
<meta name=apple-mobile-web-app-capable content=yes>
<meta name=apple-mobile-web-app-status-bar-style content=black>
<meta name=GENERATOR content="MShtml 8.00.6001.23588">
<script type="text/javascript" src="__STATIC__/common/barcode/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="__STATIC__/common/barcode/js/util.js"></script>
<script type="text/javascript" src="__STATIC__/common/barcode/js/quagga.min.js"></script>
<script type="text/javascript" src="__STATIC__/common/barcode/js/LocalResizeIMG.js"></script>
<script type="text/javascript" src="__STATIC__/common/barcode/js/patch/mobileBUGFix.mini.js"></script>
<script type="text/javascript">
    
    if(document.documentElement.clientWidth/7.5<=100){
        document.documentElement.style.fontSize = document.documentElement.clientWidth/7.5 + 'px';
    }else{
        document.documentElement.style.fontSize = 100 + 'px';
    }
        
    $(document).ready(function(){
        
        //文件上传
        $.each($('input:file'), function(index, item){
            //文件压缩
            $(item).localResizeIMG({
                //width : 800,
                quality : 1,
                before : function(){
                    util.showMask();
                },
                success : function(result){
                    var imgData = result.clearBase64;
                    Quagga.decodeSingle({
                        //解码方式,与条形码的编码方式有关
                        decoder: {
                            readers: ["code_128_reader", "ean_reader", "ean_8_reader", "code_39_reader", "code_39_vin_reader", "codabar_reader", "upc_reader", "upc_e_reader", "i2of5_reader"]
                        },
                        locate: true, // 尝试在图像中定位条形码
                        src: 'data:image/jpg;base64,' + imgData // 或 'data:image/jpg;base64,' + data
                    }, function(result){
                        if(result) {
                            console.log(result)
                            // alert(result)
                            if(result.codeResult) {
                                $("#result").val(result.codeResult.code);
                            } else {
                                $("#result").val("");
                                alert("识别失败,请重新扫码!");
                            }
                        }else{
                            alert("挂了!");
                            $("#result").val("");
                        }
                        util.removeMask(); 
                    });
                }
            });
        });
    });
                        
</script>
</head>
<body>
    <section>
        <div style="position: absolute; top: 0;">
            <form id="sform" method="post" name="sform" enctype="multipart/form-data">
                <p>
                    <span style="font-size: 14px;"><label id="scan_code">条码:</label></span>
                    <span><input class="infoInput"
                        id="result" style="width: 120px;" type="text" placeholder="" readonly="readonly" /></span>
                    <input type="button" class="upload-btn" value="扫码" onclick="$('#code').click();" />
                    <input id="code" class="pad10 b-f" style="display: none;" type="file" accept="image/*" />
                </p>
            </form>
        </div>
    </section>
</body>
</html>

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值