MUI 二维码扫描并跳转
1 首页 index.html
- <li id="html/barcode.html" onclick="clicked(this.id)">
- <span class="item">Barcode
- <div class="chs">二维码扫描</div>
- </span>
</li>
2 二维码页面:html/barcode.html
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8"/>
- <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
- <meta name="HandheldFriendly" content="true"/>
- <meta name="MobileOptimized" content="320"/>
- <title>Hello H5+</title>
- <script type="text/javascript" src="../js/common.js"></script>
- <script type="text/javascript">
- 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({conserve:true,filename:'_doc/barcode/'});
- }, false);
- // 显示页面并关闭等待框
- ws.show('pop-in');
- }
- 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 = '其它'+type;
- break;
- }
- result = result.replace(/\n/g, '');
- //分析扫描结果:是URL就跳转 ,不是就提示
- if(result.indexOf('http://')==0 || result.indexOf('https://')==0){
- plus.nativeUI.confirm(result, function(i){
- if(i.index == 0){
- back();//返回上一页
- plus.runtime.openURL(result);
- }else{
- back();//返回上一页
- }
- }, '', ['打开', '取消']);
- } else{
- back();//返回上一页
- plus.nativeUI.alert(result);
- }
- }
- // 从相册中选择二维码图片
- function scanPicture(){
- plus.gallery.pick(function(path){
- plus.barcode.scan(path,onmarked,function(error){
- plus.nativeUI.alert('无法识别此图片');
- });
- }, function(err){
- plus.nativeUI.alert('Failed: '+err.message);
- });
- }
- </script>
- <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/>
- <style type="text/css">
- #bcid {
- width: 100%;
- position: absolute;
- top: 0px;
- bottom: 44px;
- text-align: center;
- }
- .tip {
- color: #FFFFFF;
- font-weight: bold;
- text-shadow: 0px -1px #103E5C;
- }
- footer {
- width: 100%;
- height: 44px;
- position: absolute;
- bottom: 0px;
- line-height: 44px;
- text-align: center;
- color: #FFF;
- }
- .fbt {
- width: 50%;
- height: 100%;
- background-color: #007500;
- float: left;
- }
- .fbt:active {
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.5);
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.5);
- }
- </style>
- </head>
- <body style="background-color: #000000;">
- <div id="bcid">
- <div style="height:40%"></div>
- <p class="tip">...载入中...</p>
- </div>
- <footer>
- <div class="fbt" onclick="back()">取 消</div>
- <div class="fbt" onclick="scanPicture()">从相册选择二维码</div>
- </footer>
- </body>
- </html>
MUI 二维码扫描并跳转的更多相关文章
- mui 二维码扫描功能
mui 扫一扫识别二维码 以及多次扫码后从结果页返回时黑屏问题解决 扫一扫页面全部代码 <!doctype html><html> <head> ...
- iOS - 二维码扫描和应用跳转
序言 前面我们已经调到过怎么制作二维码,在我们能够生成二维码之后,如何对二维码进行扫描呢? 在iOS7之前,大部分应用中使用的二维码扫描是第三方的扫描框架,例如ZXing或者ZBar.使用时集成麻烦, ...
- iOS开发-二维码扫描和应用跳转
iOS开发-二维码扫描和应用跳转 序言 前面我们已经调到过怎么制作二维码,在我们能够生成二维码之后,如何对二维码进行扫描呢? 在iOS7之前,大部分应用中使用的二维码扫描是第三方的扫描框架,例如Z ...
- 微信小程序 空白页重定向---二维码扫描第二次进入 不经过onLoad过程解析scene参数,跳转问题
在刚开始的时候将小程序的入口文件直接指向tabbar 的首页,此时出现问题:二维码扫描,第一次不关闭首页,第二次进入时:不会经过onLoad过程解析scene参数: 官方中解释:tabbar跳转方式触 ...
- [Unity3D]自制UnityForAndroid二维码扫描插件
一周左右终于将二维码生成和扫描功能给实现了,终于能舒缓一口气了,从一开始的疑惑为啥不同的扫码客户端为啥扫出来的效果不同?通用的扫描器扫出来就是一个下载APK,自制的扫描器扫出来是想要的有效信息,然后分 ...
- Android仿微信二维码扫描
转载:http://blog.csdn.net/xiaanming/article/details/10163203 了解二维码这个东西还是从微信中,当时微信推出二维码扫描功能,自己感觉挺新颖的,从一 ...
- iOS二维码扫描IOS7系统实现
扫描相关类 二维码扫描需要获取摄像头并读取照片信息,因此我们需要导入系统的AVFoundation框架,创建视频会话.我们需要用到一下几个类: AVCaptureSession 会话对象.此类作为硬件 ...
- Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果
Android 高手进阶(21) 版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请注明出处:http://blog.csdn.net/xiaanming/article/detail ...
- android 二维码扫描
了解二维码这个东西还是从微信 中,当时微信推出二维码扫描功能,自己感觉挺新颖的,从一张图片中扫一下竟然能直接加好友,不可思议啊,那时候还不了解二维码,呵呵,然后做项目的时候, 老板说要加上二维码扫描功 ...
随机推荐
- C语言 · 回形取数
基础练习 回形取数 时间限制:1.0s 内存限制:512.0MB 问题描述 回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度.一开始位于矩阵左上角,方向向 ...
- [状态机]嵌入式设计模式:有限状态自动机的C语言实现
转自:http://www.cnblogs.com/autosar/archive/2012/06/22/2558604.html 状态机模式是一种行为模式,在<设计模式>这本书中对其有详 ...
- java执行jar包
一般运行包含manifest的jar包,可以使用 java -jar <jar-file-name>.jar 如果jar里没有 manifest,则可以使用 java -cp foo.ja ...
- FTP原理
1.1.1 ftp的主动模式和被动模式 扩展重要. FTP是仅基于TCP的服务,不支持UDP. 与众不同的是FTP使用2个端口,一个数据端口和一个命令端口(也可叫做控制端口).通常来说这两个端口是21 ...
- MongoDB Shell 了解使用
配置环境变量 WIN10系统:右键单击"此电脑"--属性--高级系统设置--高级--环境变量,添加C:\Program Files\MongoDB\Server\3.0\bin 如 ...
- js学习系列之-----apply和call
apply call 从字面意思就看出来,申请请,呼叫. 打个比方就是别人有什么功能,你向别人,申请 呼叫 一下,哥们拿你的功能用一下,而apply 和call就是实现这样的功能 apply 和cal ...
- AWS SDK for C++调用第三方S3 API
这里介绍AWS SDK for C++ 1.0.x版本,比如下载: https://github.com/aws/aws-sdk-cpp/archive/1.0.164.tar.gz 环境:RHEL/ ...
- Java JNI初探
---说明,之前直接百度出来的例子,照猫画虎.没想到的是这例子居然直接来自百度百科,写着写着就囧了.. ---anyway,写完了就当是给自己看吧. 同事求助,就看了一下,照猫画虎一番,略有所得. J ...
- e578. Setting the Clipping Area with a Shape
This example demonstrates how to set a clipping area using a shape. The example sets an oval for the ...
- ffmpeg h264+ts +udp传输
http://bbs.csdn.net/topics/370246456 http://1229363.blog.163.com/blog/static/19743427201001244711137 ...