日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

基于MUI框架的HTML5+的二维码扫描实现

發布時間:2023/12/15 HTML 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于MUI框架的HTML5+的二维码扫描实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Barcode的一個實現案例 一、簡介 ? ? ? ? Barcode模塊管理條碼掃描,提供常見的條碼(二維碼及一維碼)的掃描識別功能,可調用設備的攝像頭對條碼圖片掃描進行數據輸入。通過plus.barcode可獲取條碼碼管理對象。

二、實現的效果



三、實現 代碼
[html]?view plaincopy
  • <!doctype?html>??
  • <html>??
  • ???<head>??
  • ????<meta?charset="UTF-8">??
  • ????<title></title>??
  • ????<meta?name="viewport"?content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"?/>??
  • ????<link?href="css/mui.min.css"?rel="stylesheet"?/>??
  • ????<script?src="js/mui.min.js"></script>??
  • ????<style?type="text/css">??
  • ????????#bcid{??
  • ????????????width:?100%;??
  • ????????????height:?100%;??
  • ????????????position:?absolute;??
  • ????????????background:?#000000;??
  • ????????}??
  • ????????html,?body?,div{??
  • ????????????height:100%;??
  • ????????????width:?100%;??
  • ????????}??
  • ????????.fbt{??
  • ????????????color:?#0E76E1;??
  • ????????????width:?50%;??
  • ????????????background-color:?#ffffff;??
  • ????????????float:?left;???
  • ????????????line-height:?44px;??
  • ????????????text-align:?center;??
  • ????????}??
  • ????</style>??
  • ???</head>??
  • ??<body>??
  • ????<header?class="mui-bar?mui-bar-nav"?style="background-color:?#ffffff;">??
  • ??????<a?class="mui-action-back?mui-icon?mui-icon-left-nav?mui-pull-left"></a>??
  • ??????<h1?class="mui-title"?style="color:?#0E76E1;">物品二維碼掃描</h1>??
  • ??????<span?class="mui-icon?mui-icon-spinner-cycle?mui-spin?mui-pull-right"?id="turnTheLight"></span>??
  • ????</header>??
  • ??????????
  • ????<div?id="bcid">?????
  • ?????????<!--盛放掃描控件的div-->??????????
  • ????</div>??
  • ??????????
  • ????<div?class="mui-bar?mui-bar-footer"?style="padding:?0px;">??
  • ????????<div?class="fbt"?onclick="scanPicture();">從相冊選擇二維碼</div>??
  • ????????<div?class="fbt?mui-action-back">取 ?消</div>??
  • ????</div>??
  • ??????????
  • ????<script?type="text/javascript">??
  • ???????????scan?=?null;//掃描對象??
  • ????????mui.plusReady(function?()?{??
  • ??????????????mui.init();??
  • ??????????startRecognize();??
  • ???????????});??
  • ??????????????
  • ????????function?startRecognize(){??
  • ???????????try{??
  • ??????????????var?filter;??
  • ?????????????//自定義的掃描控件樣式??
  • ?????????????var?styles?=?{frameColor:?"#29E52C",scanbarColor:?"#29E52C",background:?""}??
  • ????????????//掃描控件構造??
  • ????????????scan?=?new?plus.barcode.Barcode('bcid',filter,styles);??
  • ????????????scan.onmarked?=?onmarked;???
  • ????????????scan.onerror?=?onerror;??
  • ????????????scan.start();??
  • ????????????//打開關閉閃光燈處理??
  • ????????????var?flag?=?false;??
  • ????????????document.getElementById("turnTheLight").addEventListener('tap',function(){??
  • ???????????????if(flag?==?false){??
  • ??????????????????scan.setFlash(true);??
  • ??????????????????flag?=?true;??
  • ???????????????}else{??
  • ?????????????????scan.setFlash(false);??
  • ?????????????????flag?=?false;??
  • ???????????????}??
  • ????????????});??
  • ??????????}catch(e){??
  • ????????????alert("出現錯誤啦:\n"+e);??
  • ?????????????}??
  • ??????????};??
  • ????????????function?onerror(e){??
  • ????????????????????alert(e);??
  • ????????????};??
  • ????????????function?onmarked(?type,?result?)?{??
  • ????????????????????var?text?=?'';??
  • ????????????????????switch(type){??
  • ????????????????????????case?plus.barcode.QR:??
  • ????????????????????????text?=?'QR:?';??
  • ????????????????????????break;??
  • ????????????????????????case?plus.barcode.EAN13:??
  • ????????????????????????text?=?'EAN13:?';??
  • ????????????????????????break;??
  • ????????????????????????case?plus.barcode.EAN8:??
  • ????????????????????????text?=?'EAN8:?';??
  • ????????????????????????break;??
  • ????????????????????}??
  • ????????????????????alert(?text?+?"?:?"+?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>??
  • ????</body>??
  • </html>??


  • 三、做的過程中遇見的問題
    ? ?a,div占滿整個頁面 ? ? ? ?1,此div寬高都為100%,父級元素的高度也為此(依次類推直至根節點),或者此div的position為absolute; ? ? ? ?2,可采用js動態設置頁面寬高 [html]?view plaincopy
  • var?height?=?window.innerHeight?+?'px';//獲取頁面實際高度??
  • var?width?=?window.innerWidth?+?'px';??
  • document.getElementById("bcid").style.height=?height;??
  • document.getElementById("bcid").style.width=?width; ?
  • 總結

    以上是生活随笔為你收集整理的基于MUI框架的HTML5+的二维码扫描实现的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。