用AppCan生成二维码

一、生成二维码:

放置二维码的div:

 <div class="user-info">
                            <div class="user-name" id="user_name">
                            </div>
                            <div class="user-no" id="user_code">
                            </div>
                        </div>

生成二维码的代码:

window.uexOnload = function(type) {
            var  code = {};
            var qrcode_type = params.qrcode_type;
            if (!type) {
                var user_name="",_id="";
                if(qrcode_type==1){
                    user_name = params.user_name;
                    _id = params.im_friend_id;
                    code = {id:_id,type:qrcode_type};
                }else{
                    user_name = params.group_name;
                    _id = params.group_id;
                    var group_name = encodeURIComponent(user_name);
                    code = {id:_id,type:qrcode_type,group_name:group_name};
                }
                var text = JSON.stringify(code);
                var options = {
                    ecLevel: 'H',//误差校正水平
                    background:'#ffffff',
                    minVersion: 6,
                    text: text,
                    mode: 4,
                    mSize: 25 * 0.01
                };
                $('#code').qrcode(options);
                $('#user_name').html(user_name);
                $('#user_code').html(params.user_code);
            }
        }

二、取出二维码:

点击后打开相机:

<button class="btn btn-5" onclick="toScanner(event);" ontouchstart="zy_touch('active')">扫一扫</button>

调用的代码:

 function toScanner(e){
        e.stopPropagation();
        e.preventDefault();
        uexScanner.cbOpen =function (opCode,dataType,data){
            var obj = JSON.parse(data);
            var code = JSON.parse(obj.code.replace(/\\"/g, "'"));
                isAddObject(code);
        }
        uexScanner.open("ZXing", "扫一扫加好友");        
    }
uexScanner.cbOpen

uexScanner.open调用后会开启扫描功能,当扫描窗口开启后会回调cbOpen方法。

以上代码也可以写成:

function scanner(e) {
            e.stopPropagation();
            e.preventDefault();
            uexScanner.open("ZXing", "扫一扫加好友");
        }

然后在window.uexOnload=function(type){}内定义 

 uexScanner.cbOpen = ScannerSuccessCallBack;

这样也会自动调用

其中回调函数中的“data”就是收到的"text"。如果有中文,则需要相应的解码处理。

转载于:https://my.oschina.net/u/2357858/blog/489115

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值