myscan.cshtml 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. @{
  2. Layout = null;
  3. }
  4. <!doctype html>
  5. <html>
  6. <head>
  7. <meta charset="UTF-8">
  8. <title></title>
  9. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  10. <link href="~/Content/Scripts/plugins/mui/css/mui.css" rel="stylesheet" />
  11. <script src="~/Content/Scripts/plugins/mui/js/mui.js"></script>
  12. <style type="text/css">
  13. #bcid {
  14. width: 100%;
  15. height: 100%;
  16. position: absolute;
  17. background: #000000;
  18. }
  19. .fbt {
  20. color: #0E76E1;
  21. width: 50%;
  22. background-color: #ffffff;
  23. float: left;
  24. line-height: 44px;
  25. text-align: center;
  26. }
  27. .mui-bar {
  28. background-color: transparent;
  29. -webkit-box-shadow: none;
  30. box-shadow: none;
  31. }
  32. </style>
  33. </head>
  34. <body id="bcid">
  35. <header class="mui-bar mui-bar-nav white">
  36. <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
  37. <h1 class="mui-title">二维码扫描</h1>
  38. </header>
  39. <div class="mui-content">
  40. <button id="startScan" class="mui-btn mui-btn-success">开始扫描</button>
  41. <button id="cancelScan" class="mui-btn mui-btn-success">取消扫描</button>
  42. <button id="setFlash" class="mui-btn mui-btn-success">开启/关闭闪光灯</button>
  43. <div id="bcid"></div>
  44. </div>
  45. </body>
  46. </html>
  47. <script>
  48. mui.init({
  49. swipeBack: true //启用右滑关闭功能
  50. });
  51. var scan = null;
  52. var isOpen = false; // 闪光灯是否开始标志 true:闪光灯已经开启 false:闪光灯关闭
  53. // 条码识别成功事件
  54. function onmarked(type, result) {
  55. var text = '未知: ';
  56. switch (type) {
  57. case plus.barcode.QR:
  58. text = 'QR: '; // 二维码
  59. break;
  60. case plus.barcode.EAN13:
  61. text = 'EAN13: ';
  62. break;
  63. case plus.barcode.EAN8:
  64. text = 'EAN8: ';
  65. break;
  66. }
  67. alert(text + result);
  68. }
  69. // 创建扫描控件
  70. function startRecognize() {
  71. scan = new plus.barcode.Barcode('bcid');
  72. scan.onmarked = onmarked;
  73. }
  74. // 开始扫描
  75. document.getElementById("startScan").addEventListener('tap', function () {
  76. startRecognize();
  77. scan.start();
  78. })
  79. // 取消扫描
  80. document.getElementById("cancelScan").addEventListener('tap', function () {
  81. startRecognize();
  82. scan.cancel();
  83. })
  84. // 开启和关闭闪光灯
  85. document.getElementById("setFlash").addEventListener('tap', function () {
  86. startRecognize();
  87. isOpen = !isOpen;
  88. if (isOpen) {
  89. scan.setFlash(true);
  90. } else {
  91. scan.setFlash(false);
  92. }
  93. })
  94. </script>