¶Ô±ÈÐÂÎļþ |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | ws = plus.webview.currentWebview(); |
| | | nv = ws.getTitleNView(); |
| | | wo = ws.opener(); |
| | | // å¼å§æ«æ |
| | | ws.addEventListener('show', function() { |
| | | scan = new plus.barcode.Barcode('bcid', [plus.barcode.QR, plus.barcode.EAN8, plus.barcode.EAN13], { |
| | | frameColor: '#00FF00', |
| | | scanbarColor: '#00FF00' |
| | | }); |
| | | scan.onmarked = onmarked; |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | var view = null; |
| | | |
| | | function createSubview() { |
| | | view = new plus.nativeObj.View('nbutton', { |
| | | bottom: '20px', |
| | | left: '30%', |
| | | width: '40%', |
| | | height: '44px' |
| | | }, [{ |
| | | tag: 'rect', |
| | | id: 'rect', |
| | | rectStyles: { |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | } |
| | | }, { |
| | | tag: 'font', |
| | | id: 'text', |
| | | text: 'æãå', |
| | | textStyles: { |
| | | color: '#FFFFFF' |
| | | } |
| | | }]); |
| | | // å¤çäºä»¶ |
| | | view.addEventListener('click', function(e) { |
| | | switchScan(); |
| | | }, false); |
| | | view.addEventListener('touchstart', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.5)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | view.addEventListener('touchend', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | ws.append(view); |
| | | } |
| | | // å¼å
³éªå
ç¯ |
| | | var bFlash = false; |
| | | var AVCaptureDevice = null; |
| | | var Camera = null; |
| | | |
| | | function switchFlash() { |
| | | bFlash = !bFlash; |
| | | scan.setFlash(bFlash); |
| | | ws.setStyle({ |
| | | titleNView: { |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: (bFlash ? '\ue400' : '\ue401'), |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // åæ¢æ«æ |
| | | var bScan = false; |
| | | |
| | | function switchScan() { |
| | | if (bScan) { |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | view && (view.drawText('æãå', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } else { |
| | | scan.cancel(); |
| | | view && (view.drawText('å¼ãå§', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } |
| | | bScan = !bScan; |
| | | } |
| | | </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: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | | <div id="bcid"> |
| | | <div style="height:40%"></div> |
| | | <p class="tip">...è½½å
¥ä¸...</p> |
| | | </div> |
| | | </body> |
| | | </html> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | // wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | wo.evalJS("scaned('" + result + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview() { |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture() { |
| | | plus.gallery.pick(function(path) { |
| | | plus.barcode.scan(path, onmarked, function(error) { |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err) { |
| | | console.log('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: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | | <div id="bcid"> |
| | | <div style="height:40%"></div> |
| | | <p class="tip">...è½½å
¥ä¸...</p> |
| | | </div> |
| | | </body> |
| | | </html> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | // wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | wo.evalJS("scaned2('" + result + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview() { |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture() { |
| | | plus.gallery.pick(function(path) { |
| | | plus.barcode.scan(path, onmarked, function(error) { |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err) { |
| | | console.log('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: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | | <div id="bcid"> |
| | | <div style="height:40%"></div> |
| | | <p class="tip">...è½½å
¥ä¸...</p> |
| | | </div> |
| | | </body> |
| | | </html> |
| | |
| | | .head { |
| | | background-color: aliceblue; |
| | | padding-top: 10px; |
| | | padding-bottom: 10px; |
| | | margin: 5px 8px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .head_block { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .head_left { |
| | | display: flex; |
| | | } |
| | | |
| | | .head_bar { |
| | | width: 5px; |
| | | height: 20px; |
| | | background-color: red; |
| | | } |
| | | |
| | | .head_title { |
| | | margin-left: 5px; |
| | | } |
| | | |
| | | |
| | | .flex_column { |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .flex_between { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | |
| | | .flex_center { |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .center_title{ |
| | | font-weight: bolder; |
| | | } |
| | | .center_border { |
| | | border: 1px solid #ccc; |
| | | min-height: 50px; |
| | | border-radius: 5px; |
| | | margin: 15px 0 0 0; |
| | | padding: 5px 0px 5px 10px; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | .footer { |
| | | position: fixed; |
| | | bottom: 0; |
| | | background-color: aliceblue; |
| | | min-height: 100px; |
| | | padding-top: 10px; |
| | | margin: 5px 8px 0; |
| | | width: 96%; |
| | | padding-bottom: 10px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | |
| | | <!DOCTYPE HTML> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> |
| | | <meta name="HandheldFriendly" content="true"> |
| | | <meta name="MobileOptimized" content="320"> |
| | | <title>Barcode Document</title> |
| | | <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8"> |
| | | <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8"> |
| | | <script type="text/javascript" src="res/doc.js" charset="utf-8"></script><script type="text/javascript" src="res/prettify.js" charset="utf-8"></script> |
| | | </head> |
| | | <body><div id="content" class="content"> |
| | | <h1><a name="plus.barcode">barcode</a></h1> |
| | | <p>Barcode模åç®¡çæ¡ç ï¼ä¸ç»´ç åäºç»´ç ï¼æ«æè¯å«ï¼æ¯æå¸¸è§çä¸ç»´ç ï¼å¦EAN13ç ï¼åäºç»´ç ï¼å¦QRç ï¼ãéè¿è°ç¨è®¾å¤çæå头对æ¡ç è¿è¡æ«æè¯å«ï¼æ«æå°æ¡ç åè¿è¡è§£ç å¹¶è¿åç æ°æ®å
容åç ç±»åã</p> |
| | | <h2>常éï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.QR">QR</a>: QRäºç»´ç ï¼æ°å¼ä¸º0</li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN13">EAN13</a>: EANæ¡å½¢ç æ åçï¼æ°å¼ä¸º1</li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN8">EAN8</a>: ENAæ¡å½¢ç ç®çï¼æ°å¼ä¸º2</li> |
| | | <li> |
| | | <a href="#plus.barcode.AZTEC">AZTEC</a>: Aztecäºç»´ç ï¼æ°å¼ä¸º3</li> |
| | | <li> |
| | | <a href="#plus.barcode.DATAMATRIX">DATAMATRIX</a>: Data Matrixäºç»´ç ï¼æ°å¼ä¸º4</li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCA">UPCA</a>: UPCæ¡å½¢ç æ åçï¼æ°å¼ä¸º5</li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCE">UPCE</a>: UPCæ¡å½¢ç 缩ççï¼æ°å¼ä¸º6</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODABAR">CODABAR</a>: Codabaræ¡å½¢ç ï¼æ°å¼ä¸º7</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE39">CODE39</a>: Code39æ¡å½¢ç ï¼æ°å¼ä¸º8</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE93">CODE93</a>: Code93æ¡å½¢ç ï¼æ°å¼ä¸º9</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE128">CODE128</a>: Code128æ¡å½¢ç ï¼æ°å¼ä¸º10</li> |
| | | <li> |
| | | <a href="#plus.barcode.ITF">ITF</a>: ITFæ¡å½¢ç ï¼æ°å¼ä¸º11</li> |
| | | <li> |
| | | <a href="#plus.barcode.MAXICODE">MAXICODE</a>: MaxiCodeäºç»´ç ï¼æ°å¼ä¸º12</li> |
| | | <li> |
| | | <a href="#plus.barcode.PDF417">PDF417</a>: PDF 417äºç»´æ¡ç ï¼æ°å¼ä¸º13</li> |
| | | <li> |
| | | <a href="#plus.barcode.RSS14">RSS14</a>: RSS 14æ¡å½¢ç»åç ï¼æ°å¼ä¸º14</li> |
| | | <li> |
| | | <a href="#plus.barcode.RSSEXPANDED">RSSEXPANDED</a>: æ©å±å¼RSSæ¡å½¢ç»åç ï¼æ°å¼ä¸º15</li> |
| | | </ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.scan">scan</a>: æ«ç è¯å«å¾çä¸çæ¡ç </li> |
| | | <li> |
| | | <a href="#plus.barcode.create">create</a>: å建æ«ç è¯å«æ§ä»¶å¯¹è±¡</li> |
| | | <li> |
| | | <a href="#plus.barcode.getBarcodeById">getBarcodeById</a>: æ¥æ¾æ«ç è¯å«æ§ä»¶å¯¹è±¡</li> |
| | | </ul> |
| | | <h2>对象ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode">Barcode</a>: æ«ç è¯å«æ§ä»¶å¯¹è±¡</li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeStyles">BarcodeStyles</a>: Barcodeæ«ç æ§ä»¶æ ·å¼</li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeOptions">BarcodeOptions</a>: æ¡ç è¯å«æ§ä»¶æ«æåæ°</li> |
| | | </ul> |
| | | <h2>åè°æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a>: æ«ç è¯å«æååè°å½æ°</li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeErrorCallback">BarcodeErrorCallback</a>: æ«ç è¯å«é误åè°å½æ°</li> |
| | | </ul> |
| | | <h2>æéï¼</h2> |
| | | <p>permissions</p> |
| | | <pre class="prettyprint linenums"> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> |
| | | <meta name="HandheldFriendly" content="true"> |
| | | <meta name="MobileOptimized" content="320"> |
| | | <title>Barcode Document</title> |
| | | <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8"> |
| | | <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8"> |
| | | <script type="text/javascript" src="res/doc.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="res/prettify.js" charset="utf-8"></script> |
| | | </head> |
| | | <body> |
| | | <div id="content" class="content"> |
| | | <h1><a name="plus.barcode">barcode</a></h1> |
| | | <p>Barcode模åç®¡çæ¡ç ï¼ä¸ç»´ç åäºç»´ç ï¼æ«æè¯å«ï¼æ¯æå¸¸è§çä¸ç»´ç ï¼å¦EAN13ç ï¼åäºç»´ç ï¼å¦QRç ï¼ãéè¿è°ç¨è®¾å¤çæå头对æ¡ç è¿è¡æ«æè¯å«ï¼æ«æå°æ¡ç åè¿è¡è§£ç å¹¶è¿åç æ°æ®å
容åç ç±»åã</p> |
| | | <h2>常éï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.QR">QR</a>: QRäºç»´ç ï¼æ°å¼ä¸º0 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN13">EAN13</a>: EANæ¡å½¢ç æ åçï¼æ°å¼ä¸º1 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN8">EAN8</a>: ENAæ¡å½¢ç ç®çï¼æ°å¼ä¸º2 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.AZTEC">AZTEC</a>: Aztecäºç»´ç ï¼æ°å¼ä¸º3 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.DATAMATRIX">DATAMATRIX</a>: Data Matrixäºç»´ç ï¼æ°å¼ä¸º4 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCA">UPCA</a>: UPCæ¡å½¢ç æ åçï¼æ°å¼ä¸º5 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCE">UPCE</a>: UPCæ¡å½¢ç 缩ççï¼æ°å¼ä¸º6 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODABAR">CODABAR</a>: Codabaræ¡å½¢ç ï¼æ°å¼ä¸º7 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE39">CODE39</a>: Code39æ¡å½¢ç ï¼æ°å¼ä¸º8 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE93">CODE93</a>: Code93æ¡å½¢ç ï¼æ°å¼ä¸º9 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE128">CODE128</a>: Code128æ¡å½¢ç ï¼æ°å¼ä¸º10 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.ITF">ITF</a>: ITFæ¡å½¢ç ï¼æ°å¼ä¸º11 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.MAXICODE">MAXICODE</a>: MaxiCodeäºç»´ç ï¼æ°å¼ä¸º12 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.PDF417">PDF417</a>: PDF 417äºç»´æ¡ç ï¼æ°å¼ä¸º13 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.RSS14">RSS14</a>: RSS 14æ¡å½¢ç»åç ï¼æ°å¼ä¸º14 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.RSSEXPANDED">RSSEXPANDED</a>: æ©å±å¼RSSæ¡å½¢ç»åç ï¼æ°å¼ä¸º15 |
| | | </li> |
| | | </ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.scan">scan</a>: æ«ç è¯å«å¾çä¸çæ¡ç |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.create">create</a>: å建æ«ç è¯å«æ§ä»¶å¯¹è±¡ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.getBarcodeById">getBarcodeById</a>: æ¥æ¾æ«ç è¯å«æ§ä»¶å¯¹è±¡ |
| | | </li> |
| | | </ul> |
| | | <h2>对象ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode">Barcode</a>: æ«ç è¯å«æ§ä»¶å¯¹è±¡ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeStyles">BarcodeStyles</a>: Barcodeæ«ç æ§ä»¶æ ·å¼ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeOptions">BarcodeOptions</a>: æ¡ç è¯å«æ§ä»¶æ«æåæ° |
| | | </li> |
| | | </ul> |
| | | <h2>åè°æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a>: æ«ç è¯å«æååè°å½æ° |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeErrorCallback">BarcodeErrorCallback</a>: æ«ç è¯å«é误åè°å½æ° |
| | | </li> |
| | | </ul> |
| | | <h2>æéï¼</h2> |
| | | <p>permissions</p> |
| | | <pre class="prettyprint linenums"> |
| | | { |
| | | // ... |
| | | "permissions":{ |
| | |
| | | } |
| | | } |
| | | </pre> |
| | | <h1><a name="plus.barcode.Barcode">Barcode</a></h1> |
| | | <p>æ«ç è¯å«æ§ä»¶å¯¹è±¡</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h1><a name="plus.barcode.Barcode">Barcode</a></h1> |
| | | <p>æ«ç è¯å«æ§ä»¶å¯¹è±¡</p> |
| | | <pre class="prettyprint linenums"> |
| | | interface plus.barcode.Barcode { |
| | | // Methods |
| | | function void cancel(); |
| | |
| | | function void onmarked(); |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å¯éè¿plus.barcode.createå建ï¼ä¹å¯éè¿new plus.barcode.Barcodeæé ï¼ä»
å¨5+APPä¸ä½¿ç¨ï¼å建ã |
| | | æ«ç è¯å«æ§ä»¶å°ä½¿ç¨è®¾å¤çæå头é¢è§æ«æå
容ï¼å¨æ§ä»¶ä¸æ¾ç¤ºæ«æåºåæ¡çç¨æ·äº¤äºå
ç´ ã |
| | | </p> |
| | | <h2>æé ï¼</h2> |
| | | <ul><li> |
| | | <a href="#plus.barcode.Barcode.Barcode.constructor(domId,%20filters,%20styles)">Barcode.constructor(domId, filters, styles)</a>: æé æ«ç è¯å«æ§ä»¶</li></ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.cancel">cancel</a>: åæ¶æ«ç è¯å«</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.close">close</a>: å
³éæ¡ç è¯å«æ§ä»¶</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setFlash">setFlash</a>: æä½éªå
ç¯</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setStyle">setStyle</a>: 设置æ«ç è¯å«æ§ä»¶çæ ·å¼</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.start">start</a>: å¼å§æ«ç è¯å«</li> |
| | | </ul> |
| | | <h2>äºä»¶ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onmarked">onmarked</a>: æ«ç è¯å«æåäºä»¶</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onerror">onerror</a>: æ«ç è¯å«é误äºä»¶</li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeStyles">BarcodeStyles</a></h1> |
| | | <p>Barcodeæ«ç æ§ä»¶æ ·å¼</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å¯éè¿plus.barcode.createå建ï¼ä¹å¯éè¿new plus.barcode.Barcodeæé ï¼ä»
å¨5+APPä¸ä½¿ç¨ï¼å建ã |
| | | æ«ç è¯å«æ§ä»¶å°ä½¿ç¨è®¾å¤çæå头é¢è§æ«æå
容ï¼å¨æ§ä»¶ä¸æ¾ç¤ºæ«æåºåæ¡çç¨æ·äº¤äºå
ç´ ã |
| | | </p> |
| | | <h2>æé ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.Barcode.constructor(domId,%20filters,%20styles)">Barcode.constructor(domId, |
| | | filters, styles)</a>: æé æ«ç è¯å«æ§ä»¶ |
| | | </li> |
| | | </ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.cancel">cancel</a>: åæ¶æ«ç è¯å« |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.close">close</a>: å
³éæ¡ç è¯å«æ§ä»¶ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setFlash">setFlash</a>: æä½éªå
ç¯ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setStyle">setStyle</a>: 设置æ«ç è¯å«æ§ä»¶çæ ·å¼ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.start">start</a>: å¼å§æ«ç è¯å« |
| | | </li> |
| | | </ul> |
| | | <h2>äºä»¶ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onmarked">onmarked</a>: æ«ç è¯å«æåäºä»¶ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onerror">onerror</a>: æ«ç è¯å«é误äºä»¶ |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeStyles">BarcodeStyles</a></h1> |
| | | <p>Barcodeæ«ç æ§ä»¶æ ·å¼</p> |
| | | <pre class="prettyprint linenums"> |
| | | interface plus.barcode.BarcodeStyles { |
| | | attribute String background; |
| | | attribute String frameColor; |
| | |
| | | attribute String position; |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ ·å¼ï¼å¦æ«ç æ¡ãæ«ç æ¡çé¢è²çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>background: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ¡ç è¯å«æ§ä»¶èæ¯é¢è²<br><p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>frameColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br><p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>scanbarColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br><p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>top: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çåç´åç§»é<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto",æ ¹æ®heightå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£åç´å±
ä¸ã |
| | | </p> |
| | | </li> |
| | | <li>left: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çæ°´å¹³åç§»é<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çå®½åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto"ï¼æ ¹æ®widthå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£æ°´å¹³å±
ä¸ã |
| | | é»è®¤å¼ä¸º"0px"ã |
| | | </p> |
| | | </li> |
| | | <li>width: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶ç宽度<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£ç宽度ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>height: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶çé«åº¦<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>position: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å¨Webviewçªå£çå¸å±æ¨¡å¼<br><p> |
| | | å¯åå¼ï¼ |
| | | "static" - éæå¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡åéçªå£å
容æ»å¨ï¼ |
| | | "absolute" - ç»å¯¹å¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡ä¸éçªå£å
容æ»å¨ï¼ |
| | | é»è®¤å¼ä¸º"static"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeOptions">BarcodeOptions</a></h1> |
| | | <p>æ¡ç è¯å«æ§ä»¶æ«æåæ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ ·å¼ï¼å¦æ«ç æ¡ãæ«ç æ¡çé¢è²çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>background: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ¡ç è¯å«æ§ä»¶èæ¯é¢è²<br> |
| | | <p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>frameColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br> |
| | | <p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>scanbarColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br> |
| | | <p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>top: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çåç´åç§»é<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto",æ ¹æ®heightå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£åç´å±
ä¸ã |
| | | </p> |
| | | </li> |
| | | <li>left: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çæ°´å¹³åç§»é<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çå®½åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto"ï¼æ ¹æ®widthå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£æ°´å¹³å±
ä¸ã |
| | | é»è®¤å¼ä¸º"0px"ã |
| | | </p> |
| | | </li> |
| | | <li>width: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶ç宽度<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£ç宽度ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>height: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶çé«åº¦<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>position: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å¨Webviewçªå£çå¸å±æ¨¡å¼<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | "static" - éæå¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡åéçªå£å
容æ»å¨ï¼ |
| | | "absolute" - ç»å¯¹å¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡ä¸éçªå£å
容æ»å¨ï¼ |
| | | é»è®¤å¼ä¸º"static"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeOptions">BarcodeOptions</a></h1> |
| | | <p>æ¡ç è¯å«æ§ä»¶æ«æåæ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | interface plus.barcode.BarcodeOptions { |
| | | attribute Boolean conserve; |
| | | attribute String filename; |
| | |
| | | attribute String sound; |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ«ç è¯å«åæ°ï¼å¦æ¯å¦ä¿åæ«ç åæ¶çæªå¾çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>conserve: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ¯å¦ä¿åæ«ç æåæ¶çæªå¾<br><p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶å°å¾çä¿åï¼å¹¶éè¿onmarkedåè°å½æ°çfileåæ°è¿åä¿åæä»¶çè·¯å¾ã |
| | | é»è®¤å¼ä¸ºfalseï¼ä¸ä¿åæªå¾ã |
| | | </p> |
| | | </li> |
| | | <li>filename: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>ä¿åæ«ç æåæ¶å¾çä¿åè·¯å¾<br><p> |
| | | å¯éè¿æ¤åæ°è®¾ç½®ä¿åæªå¾çè·¯å¾ååç§°ï¼å¦æè®¾ç½®å¾çæä»¶åç§°åå¿
é¡»æå®æä»¶çåç¼åï¼å¿
é¡»æ¯.pngï¼ï¼å¦åè®¤ä¸ºæ¯æå®ç®å½ï¼æä»¶åç§°åèªå¨çæã |
| | | </p> |
| | | </li> |
| | | <li>vibrate: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶æ¯å¦éè¦é卿é<br><p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶éå¨è®¾å¤ï¼falseåä¸éå¨ã |
| | | é»è®¤å¼ä¸ºtrueã |
| | | </p> |
| | | </li> |
| | | <li>sound: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶ææ¾çæç¤ºé³<br><p> |
| | | å¯åå¼ï¼ |
| | | "none" - ä¸ææ¾æç¤ºé³ï¼ |
| | | "default" - ææ¾é»è®¤æç¤ºé³ï¼5+弿å
ç½®ï¼ã |
| | | é»è®¤å¼ä¸º"default"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a></h1> |
| | | <p>æ«ç è¯å«æååè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ«ç è¯å«åæ°ï¼å¦æ¯å¦ä¿åæ«ç åæ¶çæªå¾çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>conserve: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ¯å¦ä¿åæ«ç æåæ¶çæªå¾<br> |
| | | <p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶å°å¾çä¿åï¼å¹¶éè¿onmarkedåè°å½æ°çfileåæ°è¿åä¿åæä»¶çè·¯å¾ã |
| | | é»è®¤å¼ä¸ºfalseï¼ä¸ä¿åæªå¾ã |
| | | </p> |
| | | </li> |
| | | <li>filename: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>ä¿åæ«ç æåæ¶å¾çä¿åè·¯å¾<br> |
| | | <p> |
| | | å¯éè¿æ¤åæ°è®¾ç½®ä¿åæªå¾çè·¯å¾ååç§°ï¼å¦æè®¾ç½®å¾çæä»¶åç§°åå¿
é¡»æå®æä»¶çåç¼åï¼å¿
é¡»æ¯.pngï¼ï¼å¦åè®¤ä¸ºæ¯æå®ç®å½ï¼æä»¶åç§°åèªå¨çæã |
| | | </p> |
| | | </li> |
| | | <li>vibrate: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶æ¯å¦éè¦é卿é<br> |
| | | <p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶éå¨è®¾å¤ï¼falseåä¸éå¨ã |
| | | é»è®¤å¼ä¸ºtrueã |
| | | </p> |
| | | </li> |
| | | <li>sound: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶ææ¾çæç¤ºé³<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | "none" - ä¸ææ¾æç¤ºé³ï¼ |
| | | "default" - ææ¾é»è®¤æç¤ºé³ï¼5+弿å
ç½®ï¼ã |
| | | é»è®¤å¼ä¸º"default"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a></h1> |
| | | <p>æ«ç è¯å«æååè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | void BarcodeSuccessCallback(type, code, file){ |
| | | // Barcode success code |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å½Barcodeæ§ä»¶æ«ç æåæ¶çåè°å½æ°ï¼è¿åè¯å«æåçæ«ç æ°æ®ã |
| | | </p> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul> |
| | | <li>type: |
| | | <em>( |
| | | <font class="type">Number</font> |
| | | ) |
| | | å¿
é </em>è¯å«å°çæ¡ç ç±»å<br> |
| | | Numberç±»åçå¼ï¼ä¸Barcode对象å®ä¹çæ¡ç ç±»å常éä¸è´ã |
| | | </li> |
| | | <li>code: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¿
é </em>è¯å«å°çæ¡ç æ°æ®<br> |
| | | æ«ç è¯å«åºçæ°æ®å
容ï¼å符串类åï¼éç¨UTF8ç¼ç æ ¼å¼ã |
| | | </li> |
| | | <li>file: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¯é </em>æ«ç æåçæªå¾æä»¶è·¯å¾<br> |
| | | æ«ç è¯å«å°çæªå¾ï¼pngæ ¼å¼æä»¶ï¼å¦æè®¾ç½®ä¸ºä¸ä¿åæªå¾ï¼åè¿åundefinedã |
| | | </li> |
| | | </ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å½Barcodeæ§ä»¶æ«ç æåæ¶çåè°å½æ°ï¼è¿åè¯å«æåçæ«ç æ°æ®ã |
| | | </p> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul> |
| | | <li>type: |
| | | <em>( |
| | | <font class="type">Number</font> |
| | | ) |
| | | å¿
é |
| | | </em>è¯å«å°çæ¡ç ç±»å<br> |
| | | Numberç±»åçå¼ï¼ä¸Barcode对象å®ä¹çæ¡ç ç±»å常éä¸è´ã |
| | | </li> |
| | | <li>code: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¿
é |
| | | </em>è¯å«å°çæ¡ç æ°æ®<br> |
| | | æ«ç è¯å«åºçæ°æ®å
容ï¼å符串类åï¼éç¨UTF8ç¼ç æ ¼å¼ã |
| | | </li> |
| | | <li>file: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¯é |
| | | </em>æ«ç æåçæªå¾æä»¶è·¯å¾<br> |
| | | æ«ç è¯å«å°çæªå¾ï¼pngæ ¼å¼æä»¶ï¼å¦æè®¾ç½®ä¸ºä¸ä¿åæªå¾ï¼åè¿åundefinedã |
| | | </li> |
| | | </ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | : æ <h1><a name="plus.barcode.BarcodeErrorCallback">BarcodeErrorCallback</a></h1> |
| | | <p>æ«ç è¯å«é误åè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | <p>æ«ç è¯å«é误åè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | void BarcodeErrorCallback(error){ |
| | | // Error |
| | | var code = error.code; // é误ç¼ç |
| | | var message = error.message; // é误æè¿°ä¿¡æ¯ |
| | | } |
| | | </pre> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul><li>error: |
| | | <em>( |
| | | <font class="type">DOMException</font> |
| | | ) |
| | | å¿
é </em>æ«ç è¯å«çé误信æ¯<br> |
| | | å¯éè¿error.codeï¼Numberç±»åï¼è·åé误ç¼ç ï¼ |
| | | å¯éè¿error.messageï¼Stringç±»åï¼è·åé误æè¿°ä¿¡æ¯ã |
| | | </li></ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul> |
| | | <li>error: |
| | | <em>( |
| | | <font class="type">DOMException</font> |
| | | ) |
| | | å¿
é |
| | | </em>æ«ç è¯å«çé误信æ¯<br> |
| | | å¯éè¿error.codeï¼Numberç±»åï¼è·åé误ç¼ç ï¼ |
| | | å¯éè¿error.messageï¼Stringç±»åï¼è·åé误æè¿°ä¿¡æ¯ã |
| | | </li> |
| | | </ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | : æ <br><br> |
| | | </div></body> |
| | | </div> |
| | | </body> |
| | | </html> |
| | |
| | | (function(w){ |
| | | // ç©ºå½æ° |
| | | function shield(){ |
| | | return false; |
| | | } |
| | | document.addEventListener('touchstart', shield, false);//åæ¶æµè§å¨çææäºä»¶ï¼ä½¿å¾activeçæ ·å¼å¨ææºä¸æ£å¸¸çæ |
| | | document.oncontextmenu=shield;//å±è½éæ©å½æ° |
| | | // H5 plusäºä»¶å¤ç |
| | | var ws=null,as='pop-in'; |
| | | function plusReady(){ |
| | | ws=plus.webview.currentWebview(); |
| | | plus.key.addEventListener('backbutton', function(){ |
| | | back(); |
| | | },false); |
| | | } |
| | | if(w.plus){ |
| | | plusReady(); |
| | | }else{ |
| | | document.addEventListener('plusready', plusReady, false); |
| | | } |
| | | // DOMContentLoadedäºä»¶å¤ç |
| | | document.addEventListener('DOMContentLoaded', function(){ |
| | | gInit(); |
| | | document.body.onselectstart=shield; |
| | | },false); |
| | | // è¿å |
| | | w.back=function(hide){ |
| | | if(w.plus){ |
| | | ws||(ws=plus.webview.currentWebview()); |
| | | (hide||ws.preate)?ws.hide('auto'):ws.close('auto'); |
| | | }else if(history.length>1){ |
| | | history.back(); |
| | | }else{ |
| | | w.close(); |
| | | (function(w) { |
| | | // ç©ºå½æ° |
| | | function shield() { |
| | | return false; |
| | | } |
| | | }; |
| | | // å¤çç¹å»äºä»¶ |
| | | var openw=null; |
| | | /** |
| | | * æå¼æ°çªå£ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {String} t : 页颿 é¢åç§° |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.clicked=function(id, t, ws){ |
| | | if(openw){//é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | } |
| | | if(w.plus){ |
| | | ws=ws||{}; |
| | | ws.scrollIndicator||(ws.scrollIndicator='none'); |
| | | ws.scalable||(ws.scalable=false); |
| | | ws.backButtonAutoControl||(ws.backButtonAutoControl='close'); |
| | | ws.titleNView=ws.titleNView||{autoBackButton:true}; |
| | | ws.titleNView.backgroundColor = '#D74B28'; |
| | | ws.titleNView.titleColor = '#CCCCCC'; |
| | | ws.doc&&(ws.titleNView.buttons=ws.titleNView.buttons||[],ws.titleNView.buttons.push({fontSrc:'_www/helloh5.ttf',text:'\ue301',fontSize:'20px',onclick:'javascript:openDoc()'})); |
| | | t&&(ws.titleNView.titleText=t); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('loaded', function(){ |
| | | openw.show(as); |
| | | document.addEventListener('touchstart', shield, false); //åæ¶æµè§å¨çææäºä»¶ï¼ä½¿å¾activeçæ ·å¼å¨ææºä¸æ£å¸¸çæ |
| | | document.oncontextmenu = shield; //å±è½éæ©å½æ° |
| | | // H5 plusäºä»¶å¤ç |
| | | var ws = null, |
| | | as = 'pop-in'; |
| | | |
| | | function plusReady() { |
| | | ws = plus.webview.currentWebview(); |
| | | plus.key.addEventListener('backbutton', function() { |
| | | back(); |
| | | }, false); |
| | | openw.addEventListener('close', function(){ |
| | | openw=null; |
| | | }, false); |
| | | return openw; |
| | | }else{ |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * å建æ°çªå£ï¼æ åå§æ 颿 ï¼ï¼ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.createWithoutTitle=function(id, ws){ |
| | | if(openw){//é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | if (w.plus) { |
| | | plusReady(); |
| | | } else { |
| | | document.addEventListener('plusready', plusReady, false); |
| | | } |
| | | if(w.plus){ |
| | | ws=ws||{}; |
| | | ws.scrollIndicator||(ws.scrollIndicator='none'); |
| | | ws.scalable||(ws.scalable=false); |
| | | ws.backButtonAutoControl||(ws.backButtonAutoControl='close'); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('close', function(){ |
| | | openw=null; |
| | | }, false); |
| | | return openw; |
| | | }else{ |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * æå¼ææ¡£é¡µé¢ |
| | | * @param {URIString} c : è¦æå¼é¡µé¢url |
| | | */ |
| | | w.openDoc=function(c){ |
| | | plus.webview.create(c, 'document', { |
| | | titleNView:{ |
| | | autoBackButton:true, |
| | | backgroundColor:'#D74B28', |
| | | titleColor:'#CCCCCC' |
| | | }, |
| | | backButtonAutoControl:'close', |
| | | scalable:false |
| | | }).show('pop-in'); |
| | | }; |
| | | /** |
| | | * å
¼å®¹æç¤º |
| | | */ |
| | | w.compatibleConfirm=function(){ |
| | | plus.nativeUI.confirm('æ¬OSåçå±é¢ä¸æä¾è¯¥æ§ä»¶ï¼é使ç¨muiæ¡æ¶å®ç°ç±»ä¼¼ææã请ç¹å»âç¡®å®âä¸è½½Hello mui示ä¾',function(e){ |
| | | if(0==e.index){ |
| | | plus.runtime.openURL("http://www.dcloud.io/hellomui/"); |
| | | // DOMContentLoadedäºä»¶å¤ç |
| | | document.addEventListener('DOMContentLoaded', function() { |
| | | gInit(); |
| | | document.body.onselectstart = shield; |
| | | }, false); |
| | | // è¿å |
| | | w.back = function(hide) { |
| | | if (w.plus) { |
| | | ws || (ws = plus.webview.currentWebview()); |
| | | (hide || ws.preate) ? ws.hide('auto'): ws.close('auto'); |
| | | } else if (history.length > 1) { |
| | | history.back(); |
| | | } else { |
| | | w.close(); |
| | | } |
| | | },"",["ç¡®å®","åæ¶"]); |
| | | } |
| | | // éç¨å
ç´ å¯¹è±¡ |
| | | var _dout_=null; |
| | | w.gInit=function(){ |
| | | _dout_=document.getElementById("output"); |
| | | }; |
| | | // æ¸
空è¾åºå
容 |
| | | w.outClean=function(){ |
| | | _dout_.innerText=""; |
| | | _dout_.scrollTop=0;//å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºå
容 |
| | | w.outSet=function(s){ |
| | | console.log(s); |
| | | _dout_.innerText=s+"\n"; |
| | | (0==_dout_.scrollTop)&&(_dout_.scrollTop=1);//å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºè¡å
容 |
| | | w.outLine=function(s){ |
| | | console.log(s); |
| | | _dout_.innerText+=s+"\n"; |
| | | (0==_dout_.scrollTop)&&(_dout_.scrollTop=1);//å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // æ ¼å¼åæ¶é¿åç¬¦ä¸²ï¼æ ¼å¼ä¸º"HH:MM:SS" |
| | | w.timeToStr=function(ts){ |
| | | if(isNaN(ts)){ |
| | | return "--:--:--"; |
| | | }; |
| | | // å¤çç¹å»äºä»¶ |
| | | var openw = null; |
| | | /** |
| | | * æå¼æ°çªå£ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {String} t : 页颿 é¢åç§° |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.clicked = function(id, t, ws) { |
| | | if (openw) { //é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | } |
| | | if (w.plus) { |
| | | ws = ws || {}; |
| | | ws.scrollIndicator || (ws.scrollIndicator = 'none'); |
| | | ws.scalable || (ws.scalable = false); |
| | | ws.backButtonAutoControl || (ws.backButtonAutoControl = 'close'); |
| | | ws.titleNView = ws.titleNView || { |
| | | autoBackButton: true |
| | | }; |
| | | ws.titleNView.backgroundColor = '#D74B28'; |
| | | ws.titleNView.titleColor = '#CCCCCC'; |
| | | ws.doc && (ws.titleNView.buttons = ws.titleNView.buttons || [], ws.titleNView.buttons.push({ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue301', |
| | | fontSize: '20px', |
| | | onclick: 'javascript:openDoc()' |
| | | })); |
| | | t && (ws.titleNView.titleText = t); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('loaded', function() { |
| | | openw.show(as); |
| | | }, false); |
| | | openw.addEventListener('close', function() { |
| | | openw = null; |
| | | }, false); |
| | | return openw; |
| | | } else { |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * å建æ°çªå£ï¼æ åå§æ 颿 ï¼ï¼ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.createWithoutTitle = function(id, ws) { |
| | | if (openw) { //é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | } |
| | | if (w.plus) { |
| | | ws = ws || {}; |
| | | ws.scrollIndicator || (ws.scrollIndicator = 'none'); |
| | | ws.scalable || (ws.scalable = false); |
| | | ws.backButtonAutoControl || (ws.backButtonAutoControl = 'close'); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('close', function() { |
| | | openw = null; |
| | | }, false); |
| | | return openw; |
| | | } else { |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * æå¼ææ¡£é¡µé¢ |
| | | * @param {URIString} c : è¦æå¼é¡µé¢url |
| | | */ |
| | | w.openDoc = function(c) { |
| | | plus.webview.create(c, 'document', { |
| | | titleNView: { |
| | | autoBackButton: true, |
| | | backgroundColor: '#D74B28', |
| | | titleColor: '#CCCCCC' |
| | | }, |
| | | backButtonAutoControl: 'close', |
| | | scalable: false |
| | | }).show('pop-in'); |
| | | }; |
| | | /** |
| | | * å
¼å®¹æç¤º |
| | | */ |
| | | w.compatibleConfirm = function() { |
| | | plus.nativeUI.confirm('æ¬OSåçå±é¢ä¸æä¾è¯¥æ§ä»¶ï¼é使ç¨muiæ¡æ¶å®ç°ç±»ä¼¼ææã请ç¹å»âç¡®å®âä¸è½½Hello mui示ä¾', function(e) { |
| | | if (0 == e.index) { |
| | | plus.runtime.openURL("http://www.dcloud.io/hellomui/"); |
| | | } |
| | | }, "", ["ç¡®å®", "åæ¶"]); |
| | | } |
| | | var h=parseInt(ts/3600); |
| | | var m=parseInt((ts%3600)/60); |
| | | var s=parseInt(ts%60); |
| | | return (ultZeroize(h)+":"+ultZeroize(m)+":"+ultZeroize(s)); |
| | | }; |
| | | // æ ¼å¼åæ¥ææ¶é´åç¬¦ä¸²ï¼æ ¼å¼ä¸º"YYYY-MM-DD HH:MM:SS" |
| | | w.dateToStr=function(d){ |
| | | return (d.getFullYear()+"-"+ultZeroize(d.getMonth()+1)+"-"+ultZeroize(d.getDate())+" "+ultZeroize(d.getHours())+":"+ultZeroize(d.getMinutes())+":"+ultZeroize(d.getSeconds())); |
| | | }; |
| | | /** |
| | | * zeroize value with length(default is 2). |
| | | * @param {Object} v |
| | | * @param {Number} l |
| | | * @return {String} |
| | | */ |
| | | w.ultZeroize=function(v,l){ |
| | | var z=""; |
| | | l=l||2; |
| | | v=String(v); |
| | | for(var i=0;i<l-v.length;i++){ |
| | | z+="0"; |
| | | } |
| | | return z+v; |
| | | }; |
| | | // éç¨å
ç´ å¯¹è±¡ |
| | | var _dout_ = null; |
| | | w.gInit = function() { |
| | | _dout_ = document.getElementById("output"); |
| | | }; |
| | | // æ¸
空è¾åºå
容 |
| | | w.outClean = function() { |
| | | _dout_.innerText = ""; |
| | | _dout_.scrollTop = 0; //å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºå
容 |
| | | w.outSet = function(s) { |
| | | console.log(s); |
| | | _dout_.innerText = s + "\n"; |
| | | (0 == _dout_.scrollTop) && (_dout_.scrollTop = 1); //å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºè¡å
容 |
| | | w.outLine = function(s) { |
| | | console.log(s); |
| | | _dout_.innerText += s + "\n"; |
| | | (0 == _dout_.scrollTop) && (_dout_.scrollTop = 1); //å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // æ ¼å¼åæ¶é¿åç¬¦ä¸²ï¼æ ¼å¼ä¸º"HH:MM:SS" |
| | | w.timeToStr = function(ts) { |
| | | if (isNaN(ts)) { |
| | | return "--:--:--"; |
| | | } |
| | | var h = parseInt(ts / 3600); |
| | | var m = parseInt((ts % 3600) / 60); |
| | | var s = parseInt(ts % 60); |
| | | return (ultZeroize(h) + ":" + ultZeroize(m) + ":" + ultZeroize(s)); |
| | | }; |
| | | // æ ¼å¼åæ¥ææ¶é´åç¬¦ä¸²ï¼æ ¼å¼ä¸º"YYYY-MM-DD HH:MM:SS" |
| | | w.dateToStr = function(d) { |
| | | return (d.getFullYear() + "-" + ultZeroize(d.getMonth() + 1) + "-" + ultZeroize(d.getDate()) + " " + |
| | | ultZeroize(d.getHours()) + ":" + ultZeroize(d.getMinutes()) + ":" + ultZeroize(d.getSeconds())); |
| | | }; |
| | | /** |
| | | * zeroize value with length(default is 2). |
| | | * @param {Object} v |
| | | * @param {Number} l |
| | | * @return {String} |
| | | */ |
| | | w.ultZeroize = function(v, l) { |
| | | var z = ""; |
| | | l = l || 2; |
| | | v = String(v); |
| | | for (var i = 0; i < l - v.length; i++) { |
| | | z += "0"; |
| | | } |
| | | return z + v; |
| | | }; |
| | | })(window); |
| | | |
| | | // fast click |
| | | ;(function () { |
| | | ; |
| | | (function() { |
| | | 'use strict'; |
| | | |
| | | /** |
| | |
| | | |
| | | // Some old versions of Android don't have Function.prototype.bind |
| | | function bind(method, context) { |
| | | return function() { return method.apply(context, arguments); }; |
| | | return function() { |
| | | return method.apply(context, arguments); |
| | | }; |
| | | } |
| | | |
| | | |
| | |
| | | } |
| | | |
| | | /** |
| | | * Windows Phone 8.1 fakes user agent string to look like Android and iPhone. |
| | | * |
| | | * @type boolean |
| | | */ |
| | | * Windows Phone 8.1 fakes user agent string to look like Android and iPhone. |
| | | * |
| | | * @type boolean |
| | | */ |
| | | var deviceIsWindowsPhone = navigator.userAgent.indexOf("Windows Phone") >= 0; |
| | | |
| | | /** |
| | |
| | | FastClick.prototype.needsClick = function(target) { |
| | | switch (target.nodeName.toLowerCase()) { |
| | | |
| | | // Don't send a synthetic click to disabled inputs (issue #62) |
| | | case 'button': |
| | | case 'select': |
| | | case 'textarea': |
| | | if (target.disabled) { |
| | | // Don't send a synthetic click to disabled inputs (issue #62) |
| | | case 'button': |
| | | case 'select': |
| | | case 'textarea': |
| | | if (target.disabled) { |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'input': |
| | | |
| | | // File inputs need real clicks on iOS 6 due to a browser bug (issue #68) |
| | | if ((deviceIsIOS && target.type === 'file') || target.disabled) { |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'label': |
| | | case 'iframe': // iOS8 homescreen apps can prevent events bubbling into frames |
| | | case 'video': |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'input': |
| | | |
| | | // File inputs need real clicks on iOS 6 due to a browser bug (issue #68) |
| | | if ((deviceIsIOS && target.type === 'file') || target.disabled) { |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'label': |
| | | case 'iframe': // iOS8 homescreen apps can prevent events bubbling into frames |
| | | case 'video': |
| | | return true; |
| | | } |
| | | |
| | | return (/\bneedsclick\b/).test(target.className); |
| | |
| | | */ |
| | | FastClick.prototype.needsFocus = function(target) { |
| | | switch (target.nodeName.toLowerCase()) { |
| | | case 'textarea': |
| | | return true; |
| | | case 'select': |
| | | return !deviceIsAndroid; |
| | | case 'input': |
| | | switch (target.type) { |
| | | case 'button': |
| | | case 'checkbox': |
| | | case 'file': |
| | | case 'image': |
| | | case 'radio': |
| | | case 'submit': |
| | | return false; |
| | | } |
| | | case 'textarea': |
| | | return true; |
| | | case 'select': |
| | | return !deviceIsAndroid; |
| | | case 'input': |
| | | switch (target.type) { |
| | | case 'button': |
| | | case 'checkbox': |
| | | case 'file': |
| | | case 'image': |
| | | case 'radio': |
| | | case 'submit': |
| | | return false; |
| | | } |
| | | |
| | | // No point in attempting to focus disabled inputs |
| | | return !target.disabled && !target.readOnly; |
| | | default: |
| | | return (/\bneedsfocus\b/).test(target.className); |
| | | // No point in attempting to focus disabled inputs |
| | | return !target.disabled && !target.readOnly; |
| | | default: |
| | | return (/\bneedsfocus\b/).test(target.className); |
| | | } |
| | | }; |
| | | |
| | |
| | | |
| | | // Synthesise a click event, with an extra attribute so it can be tracked |
| | | clickEvent = document.createEvent('MouseEvents'); |
| | | clickEvent.initMouseEvent(this.determineEventType(targetElement), true, true, window, 1, touch.screenX, touch.screenY, touch.clientX, touch.clientY, false, false, false, false, 0, null); |
| | | clickEvent.initMouseEvent(this.determineEventType(targetElement), true, true, window, 1, touch.screenX, |
| | | touch.screenY, touch.clientX, touch.clientY, false, false, false, false, 0, null); |
| | | clickEvent.forwardedTouchEvent = true; |
| | | targetElement.dispatchEvent(clickEvent); |
| | | }; |
| | |
| | | var length; |
| | | |
| | | // Issue #160: on iOS 7, some input elements (e.g. date datetime month) throw a vague TypeError on setSelectionRange. These elements don't have an integer value for the selectionStart and selectionEnd properties, but unfortunately that can't be used for detection because accessing the properties also throws a TypeError. Just check the type instead. Filed as Apple bug #15122724. |
| | | if (deviceIsIOS && targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && targetElement.type !== 'time' && targetElement.type !== 'month') { |
| | | if (deviceIsIOS && targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && |
| | | targetElement.type !== 'time' && targetElement.type !== 'month') { |
| | | length = targetElement.value.length; |
| | | targetElement.setSelectionRange(length, length); |
| | | } else { |
| | |
| | | * @returns {boolean} |
| | | */ |
| | | FastClick.prototype.touchHasMoved = function(event) { |
| | | var touch = event.changedTouches[0], boundary = this.touchBoundary; |
| | | var touch = event.changedTouches[0], |
| | | boundary = this.touchBoundary; |
| | | |
| | | if (Math.abs(touch.pageX - this.touchStartX) > boundary || Math.abs(touch.pageY - this.touchStartY) > boundary) { |
| | | if (Math.abs(touch.pageX - this.touchStartX) > boundary || Math.abs(touch.pageY - this.touchStartY) > |
| | | boundary) { |
| | | return true; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | // If the touch has moved, cancel the click tracking |
| | | if (this.targetElement !== this.getTargetElementFromEventTarget(event.target) || this.touchHasMoved(event)) { |
| | | if (this.targetElement !== this.getTargetElementFromEventTarget(event.target) || this.touchHasMoved( |
| | | event)) { |
| | | this.trackingClick = false; |
| | | this.targetElement = null; |
| | | } |
| | |
| | | |
| | | // If no for attribute exists, attempt to retrieve the first labellable descendant element |
| | | // the list of which is defined here: http://www.w3.org/TR/html5/forms.html#category-label |
| | | return labelElement.querySelector('button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea'); |
| | | return labelElement.querySelector( |
| | | 'button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea'); |
| | | }; |
| | | |
| | | |
| | |
| | | * @returns {boolean} |
| | | */ |
| | | FastClick.prototype.onTouchEnd = function(event) { |
| | | var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this.targetElement; |
| | | var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this |
| | | .targetElement; |
| | | |
| | | if (!this.trackingClick) { |
| | | return true; |
| | |
| | | touch = event.changedTouches[0]; |
| | | |
| | | // In certain cases arguments of elementFromPoint can be negative, so prevent setting targetElement to null |
| | | targetElement = document.elementFromPoint(touch.pageX - window.pageXOffset, touch.pageY - window.pageYOffset) || targetElement; |
| | | targetElement = document.elementFromPoint(touch.pageX - window.pageXOffset, touch.pageY - window |
| | | .pageYOffset) || targetElement; |
| | | targetElement.fastClickScrollParent = this.targetElement.fastClickScrollParent; |
| | | } |
| | | |
| | |
| | | |
| | | // Case 1: If the touch started a while ago (best guess is 100ms based on tests for issue #36) then focus will be triggered anyway. Return early and unset the target element reference so that the subsequent click will be allowed through. |
| | | // Case 2: Without this exception for input elements tapped when the document is contained in an iframe, then any inputted text won't be visible even though the value attribute is updated as the user types (issue #37). |
| | | if ((event.timeStamp - trackingClickStart) > 100 || (deviceIsIOS && window.top !== window && targetTagName === 'input')) { |
| | | if ((event.timeStamp - trackingClickStart) > 100 || (deviceIsIOS && window.top !== window && |
| | | targetTagName === 'input')) { |
| | | this.targetElement = null; |
| | | return false; |
| | | } |
| | |
| | | } |
| | | |
| | | // Chrome version - zero for other browsers |
| | | chromeVersion = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; |
| | | chromeVersion = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1]; |
| | | |
| | | if (chromeVersion) { |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | // Chrome desktop doesn't need FastClick (issue #15) |
| | | // Chrome desktop doesn't need FastClick (issue #15) |
| | | } else { |
| | | return true; |
| | | } |
| | |
| | | } |
| | | |
| | | // Firefox version - zero for other browsers |
| | | firefoxVersion = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; |
| | | firefoxVersion = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1]; |
| | | |
| | | if (firefoxVersion >= 27) { |
| | | // Firefox 27+ does not have tap delay if the content is not zoomable - https://bugzilla.mozilla.org/show_bug.cgi?id=922896 |
| | | |
| | | metaViewport = document.querySelector('meta[name=viewport]'); |
| | | if (metaViewport && (metaViewport.content.indexOf('user-scalable=no') !== -1 || document.documentElement.scrollWidth <= window.outerWidth)) { |
| | | if (metaViewport && (metaViewport.content.indexOf('user-scalable=no') !== -1 || document |
| | | .documentElement.scrollWidth <= window.outerWidth)) { |
| | | return true; |
| | | } |
| | | } |
| | |
| | | window.FastClick = FastClick; |
| | | } |
| | | |
| | | document.addEventListener('DOMContentLoaded', function() { |
| | | FastClick.attach(document.body); |
| | | }, false); |
| | | document.addEventListener('DOMContentLoaded', function() { |
| | | FastClick.attach(document.body); |
| | | }, false); |
| | | |
| | | }()); |
| | |
| | | // // æ ¼å¼åå°åæ åæ° å°å¯¹è±¡èªå¨æ¼æ¥æå°åæ ä¼ åå½¢å¼ |
| | | |
| | | // export formatParams() { |
| | | // const data = { |
| | | // userid: 33, |
| | | // usercode: '002', |
| | | // username: 'å¼ ä¸', |
| | | // usertype: 'APP' |
| | | // } |
| | | |
| | | |
| | | // return data |
| | | |
| | | // } |
| | | |
| | | // export const value=1 |
| | | (function(w) { |
| | | // æ ¼å¼åå°åæ åæ° å°å¯¹è±¡èªå¨æ¼æ¥æå°åæ ä¼ åå½¢å¼ |
| | | w.formatParams = function() { |
| | | const data = { |
| | | userid: 33, |
| | | usercode: '002', |
| | | username: 'å¼ ä¸', |
| | | usertype: 'APP' |
| | | } |
| | | return data; |
| | | } |
| | | |
| | | |
| | | })(window); |
| | |
| | | <script type="text/javascript" src="../../js/http.js"></script> |
| | | |
| | | |
| | | <!-- 导å
¥èªå®ä¹jsæä»¶ --> |
| | | <!-- <script type="module" src="../../js/global.js"></script> --> |
| | | <!-- 导å
¥èªå®ä¹å
¨å±jsæä»¶ --> |
| | | <script type="text/javascript" src="../../js/global.js"></script> |
| | | |
| | | |
| | | |
| | |
| | | |
| | | }, |
| | | mounted() { |
| | | |
| | | console.log(formatParams(),1) |
| | | }, |
| | | methods: { |
| | | loginClick() { |
| | |
| | | <meta name="HandheldFriendly" content="true" /> |
| | | <meta name="MobileOptimized" content="320" /> |
| | | <title>æ°å¯è¿ªå¶é äºå¹³å°</title> |
| | | |
| | | |
| | | <!-- å¼å
¥æ ·å¼æä»¶ --> |
| | | <link rel="stylesheet" href="../../css/vant.css" /> |
| | | <!-- å¼å
¥ Vue å Vant ç JS æä»¶ --> |
| | |
| | | <script type="text/javascript" src="../../js/axios.min.js"></script> |
| | | <script type="text/javascript" src="../../js/http.js"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/common.js"></script> |
| | | |
| | | <link rel="stylesheet" href="../css/global.css" type="text/css" charset="utf-8" /> |
| | | <!-- <link rel="stylesheet" href="../../css/global.css" type="text/css" charset="utf-8" /> --> |
| | | |
| | | <script type="text/javascript"> |
| | | var topContent = [ |
| | | // { |
| | | // code: 'SB001', |
| | | // name: '齿轮箱ç»', |
| | | // wksp_code: "CJ002", |
| | | // wksp_name: 'è£
é
车é´', |
| | | // eqpchkmain_code: "djbz002" |
| | | // }, |
| | | // { |
| | | // code: 'SB003', |
| | | // name: '齿轮箱ç»', |
| | | // wksp_code: "CJ002", |
| | | // wksp_name: 'è£
é
车é´', |
| | | // eqpchkmain_code: "djbz002" |
| | | // }, |
| | | ]; |
| | | |
| | | var centerContent = [ |
| | | // { |
| | | // checkdesc: 'æ°åæ£å¸¸10å¸ï¼æé«ä¸è¶
è¿10.5å¸ï¼æä½ä¸ä½äº9.7', |
| | | // code: 'BW003', |
| | | // name: 'é¨ä½3', |
| | | // seq: 2, |
| | | // cycle: 'D', |
| | | // isscan: 'N', |
| | | // isOK: 'OK', |
| | | // inputValue: '', |
| | | // isDisabled: false, |
| | | // }, |
| | | ] |
| | | |
| | | |
| | | let radioValue = '' |
| | | |
| | | let resultValue = '' |
| | | |
| | | |
| | | let bwcode = '' |
| | | |
| | | let number = [] |
| | | |
| | | function scaned(r) { |
| | | |
| | | let flag = false |
| | | topContent.forEach((item, index) => { |
| | | if (item.code === r) { |
| | | flag = true |
| | | } |
| | | }) |
| | | if (flag) { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: 'æ¤æ¡ç å·²æ«æï¼å·²å¨å表ä¸ï¼' |
| | | }); |
| | | } else { |
| | | get('AppDeviceManage/CheckScanDeviceQrCodeData', { |
| | | eqpcode: r |
| | | }).then(res => { |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code !== null) { |
| | | topContent.unshift(res.data[0]) |
| | | topContentClcik(topContent[0].code) |
| | | } |
| | | |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code === null) { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: 'å½åè®¾å¤æªè®¾ç½®ç¹æ£æ åç»å®ç¹æ£é¡¹ç®ï¼' |
| | | }); |
| | | } |
| | | }) |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | function scaned2(r) { |
| | | if (bwcode === r) { |
| | | centerContent.forEach(item => { |
| | | if (item.code === bwcode) { |
| | | item.isDisabled = false |
| | | item.isOK = 'OK' |
| | | |
| | | |
| | | if (centerContent.every(r => r.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } |
| | | if (centerContent.some(r => r.isOK === 'NG')) { |
| | | resultValue = 'NG' |
| | | } |
| | | if (centerContent.some(r => r.isOK === '')) { |
| | | resultValue = '' |
| | | } |
| | | |
| | | |
| | | number.push({ |
| | | id: '1' |
| | | }) |
| | | } |
| | | }) |
| | | } else { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: 'æ«æçäºç»´ç æªä¸æ¤ç¹æ£é¡¹ç®ç¸å¹é
ï¼' |
| | | }); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | function topContentClcik(code) { |
| | | radioValue = code |
| | | get('AppDeviceManage/SelectScanDeviceQrCodeItem', { |
| | | eqpcode: code |
| | | }).then(res => { |
| | | if (res.code === '200') { |
| | | centerContent = res.data |
| | | centerContent = JSON.parse(JSON.stringify(centerContent)) |
| | | centerContent.forEach(item => { |
| | | item.isDisabled = item.isscan === 'Y' |
| | | item.inputValue = '' |
| | | item.isOK = item.isscan !== 'Y' ? 'OK' : '' |
| | | }) |
| | | if (centerContent.every(r => r.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } |
| | | if (centerContent.some(r => r.isOK === 'NG')) { |
| | | resultValue = 'NG' |
| | | } |
| | | if (centerContent.some(r => r.isOK === '')) { |
| | | resultValue = '' |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | </script> |
| | | </head> |
| | | <!-- <body onload="loadNodes()"> --> |
| | | <body> |
| | | <div id="app"> |
| | | |
| | |
| | | |
| | | <van-nav-bar title="æ¥å¸¸ç¹æ£" @click-right="onClickRight" left-arrow @click-left="onClickleft"> |
| | | <template #right> |
| | | <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" |
| | | <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" |
| | | trigger="click" :actions="actions" @select="onSelect"> |
| | | <template #reference> |
| | | <van-icon name="bars" size='20' color='#fff' /> |
| | |
| | | </template> |
| | | </van-nav-bar> |
| | | |
| | | </div> |
| | | |
| | | <div class="head"> |
| | | <div class="head_block"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | æ«æç¹æ£å·¥ä½ |
| | | </div> |
| | | </div> |
| | | |
| | | <div style="margin-right: 10px;"> |
| | | <van-icon name="scan" color='red' size='24' @click='topScanClick()' /> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div class="flex_between" style=""> |
| | | <div id="contentLeft" style="width: 100%;margin-top: 10px;"> |
| | | <div id="topContentID" v-for="item in topContent" :key="item.code" |
| | | style="margin-bottom: 10px;margin-left: 20px;" @click="topContentClcik(item.code)"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <div> |
| | | <div>å·¥ä½ç¼ç ï¼</div> |
| | | <div>å·¥ä½åç§°ï¼</div> |
| | | <div>ç产车é´ï¼</div> |
| | | </div> |
| | | <div> |
| | | <div>{{item.code}}</div> |
| | | <div>{{item.name}}</div> |
| | | <div>{{item.wksp_name}}</div> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | <div id="contentRight"> |
| | | <van-radio-group v-model="radioValue" style="padding-right: 12px;"> |
| | | <van-radio checked-color='red' icon-size="18px" |
| | | style="height: 63px;margin-bottom: 10px;" v-for="item in topContent" |
| | | :key="item.code" :name="item.code"></van-radio> |
| | | </van-radio-group> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="head" |
| | | :style="{marginTop:topContent.length===0?'100px':'0',minHeight:topContent.length===0?'0':'220px'}" |
| | | style="margin-bottom: 130px;padding-bottom: 10px;overflow-y: ;" |
| | | :style="{marginTop:topContent.length===0?'78px':'0'}"> |
| | | <div class="head_block" style="margin-bottom:10px;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£é¡¹ç®å
容 |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div class="center_border flex_column" style="margin: 5px;" v-for="item in centerContent" |
| | | :key="item.code"> |
| | | <div class="flex_between"> |
| | | <div class="center_title">{{item.name}}</div> |
| | | <div style="margin-right: 10px;" v-if="item.isscan==='Y'"> |
| | | <van-icon name="scan" color='red' size='24' @click='centerScanClick(item.code)' /> |
| | | </div> |
| | | </div> |
| | | <div class="flex_between "> |
| | | <div class='flex_between' style="width: 90%;"> |
| | | <van-field class="vanFieldInput" :disabled="item.isDisabled" v-model="item.inputValue" |
| | | placeholder="请è¾å
¥" /> |
| | | </div> |
| | | |
| | | |
| | | <div class="" style="width: 40%;display: flex;justify-content: space-around;"> |
| | | <van-button class="buttonSmall" :disabled='item.isDisabled' size="small" |
| | | :plain="item.isOK!=='OK'" @click="bwClick(item,'OK')" type="primary">æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="item.isOK!=='NG'" |
| | | @click="bwClick(item,'NG')" :disabled='item.isDisabled' type="danger">å¼å¸¸ |
| | | </van-button> |
| | | </div> |
| | | </div> |
| | | <div style="font-weight: lighter;font-size: 14px;padding-right: 5px"> |
| | | {{item.checkdesc}} |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | |
| | | <div style=""> |
| | | <div class="footer"> |
| | | <div class="head_block" style="margin-bottom: 20rpx;align-items: center;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£ç»æ |
| | | </div> |
| | | </div> |
| | | <div class="flex_center" style="width: 30%;display: flex;justify-content: space-around;"> |
| | | |
| | | <van-button class="buttonSmall" |
| | | :disabled="centerContent.some(item=>item.isDisabled===true)||centerContent.length===0" |
| | | size="small" :plain="resultValue!=='OK'" @click="resultClick('OK')" type="primary"> |
| | | æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="resultValue!=='NG'" |
| | | :disabled="centerContent.some(item=>item.isDisabled===true)||centerContent.length===0" |
| | | @click="resultClick('NG')" type="danger">å¼å¸¸</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div |
| | | style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center"> |
| | | <van-button class="vanButtonInfo" :disabled="resultValue===''" @click="submit" type="info"> |
| | | 确认æäº¤</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | </div> |
| | | |
| | | <van-overlay :show="overlayShow" @click="overlayShow=false" /> |
| | | |
| | |
| | | icon: 'revoke', |
| | | text: 'éåºç»å½' |
| | | }], |
| | | |
| | | topContent2: topContent, |
| | | centerContent2: centerContent, |
| | | number2: number |
| | | } |
| | | }, |
| | | created() { |
| | | watch: { |
| | | 'topContent2.length': { |
| | | handler(newValue, oldValue) { |
| | | if (newValue !== oldValue) { |
| | | // this.topContent2 = topContent |
| | | // this.$forceUpdate() |
| | | if (topContent[0] && topContent[0].code) { |
| | | this.$forceUpdate() |
| | | this.topContentClcik(topContent[0].code) |
| | | } |
| | | |
| | | } |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | |
| | | 'topContent.length': { |
| | | handler(newValue, oldValue) { |
| | | if (newValue !== oldValue) { |
| | | this.$forceUpdate() |
| | | // if (topContent[0]&&topContent[0].code) { |
| | | // this.$forceUpdate() |
| | | // this.topContentClcik(topContent[0].code) |
| | | // } |
| | | } |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | 'number2.length': { |
| | | handler(newValue, oldValue) { |
| | | this.$forceUpdate() |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | 'number.length': { |
| | | handler(newValue, oldValue) { |
| | | this.$forceUpdate() |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | created() {}, |
| | | mounted() {}, |
| | | methods: { |
| | | onClickleft(){ |
| | | submit() { |
| | | vant.Toast('xxx1') |
| | | }, |
| | | topContentClcik(code) { |
| | | radioValue = code |
| | | this.$forceUpdate() |
| | | get('AppDeviceManage/SelectScanDeviceQrCodeItem', { |
| | | eqpcode: code |
| | | }).then(res => { |
| | | if (res.code === '200') { |
| | | centerContent = res.data |
| | | centerContent.forEach(item => { |
| | | item.isDisabled = item.isscan === 'Y' |
| | | item.inputValue = '' |
| | | item.isOK = item.isscan !== 'Y' ? 'OK' : '' |
| | | }) |
| | | if (centerContent.every(r => r.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } |
| | | if (centerContent.some(r => r.isOK === 'NG')) { |
| | | resultValue = 'NG' |
| | | } |
| | | if (centerContent.some(r => r.isOK === '')) { |
| | | resultValue = '' |
| | | } |
| | | |
| | | this.$forceUpdate() |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | resultClick(val) { |
| | | resultValue = val |
| | | this.$forceUpdate() |
| | | }, |
| | | |
| | | selected(id) { |
| | | alert(id) |
| | | }, |
| | | |
| | | // æ«æç¹æ£å·¥ä½æ«æ |
| | | topScanClick() { |
| | | createWithoutTitle('../../components/barcode_scan.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | // ç¹æ£é¡¹ç®å
å®¹æ«æ |
| | | centerScanClick(code) { |
| | | bwcode = code |
| | | createWithoutTitle('../../components/barcode_scan2.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | // é¨ä½æ£å¸¸ å¼å¸¸æé®ç¹å» |
| | | bwClick(item, val) { |
| | | item.isOK = val |
| | | if (centerContent.every(item => item.isOK !== '')) { |
| | | if (centerContent.every(item => item.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } else { |
| | | resultValue = 'NG' |
| | | } |
| | | } |
| | | this.$forceUpdate() //强å¶è§å¾æ´æ° |
| | | }, |
| | | onClickleft() { |
| | | history.back() |
| | | }, |
| | | onClickRight() { |
| | |
| | | }) |
| | | </script> |
| | | <style type="text/css"> |
| | | @import url('../../css/global.css'); |
| | | |
| | | body { |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .body { |
| | | height: 600px; |
| | | min-height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | background-color: #fff; |
| | | position: relative; |
| | | position: relative; |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | |
| | | color: #fff; |
| | | letter-spacing: 2px; |
| | | } |
| | | .van-nav-bar__arrow{ |
| | | |
| | | .van-nav-bar__arrow { |
| | | color: #fff !important; |
| | | } |
| | | |
| | | .createElementDiv { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | margin-bottom: 10px; |
| | | margin-left: 20px; |
| | | } |
| | | |
| | | .vanFieldInput { |
| | | height: 36px; |
| | | line-height: 36px; |
| | | align-items: center; |
| | | /* width: 200px; */ |
| | | |
| | | padding: 0; |
| | | padding-left: 10px; |
| | | /* border-radius: 5px; */ |
| | | margin: 5px 0; |
| | | /* background-color: #fff; */ |
| | | } |
| | | |
| | | .buttonSmall { |
| | | /* border-radius: 5px; */ |
| | | } |
| | | |
| | | .vanButtonInfo { |
| | | width: 100%; |
| | | letter-spacing: 2px; |
| | | height: 50px; |
| | | font-size: 18px; |
| | | /* margin-left: 0; */ |
| | | |
| | | } |
| | | </style> |
| | | </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>æ°å¯è¿ªå¶é äºå¹³å°</title> |
| | | |
| | | <!-- å¼å
¥æ ·å¼æä»¶ --> |
| | | <link rel="stylesheet" href="../../css/vant.css" /> |
| | | <!-- å¼å
¥ Vue å Vant ç JS æä»¶ --> |
| | | <script src="../../js/vue.min.js"></script> |
| | | <script src="../../js/vant.min.js"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/jquery-1.6.4.min.js"></script> |
| | | <script type="text/javascript" src="../../js/axios.min.js"></script> |
| | | <script type="text/javascript" src="../../js/http.js"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/common.js"></script> |
| | | |
| | | <!-- <link rel="stylesheet" href="../../css/global.css" type="text/css" charset="utf-8" /> --> |
| | | |
| | | <script type="text/javascript"> |
| | | var topContent = [{ |
| | | code: 'SB001', |
| | | name: '12312', |
| | | wksp_code: "CJ002", |
| | | wksp_name: '12321321', |
| | | eqpchkmain_code: "djbz002" |
| | | }, ]; |
| | | |
| | | var centerContent = [{ |
| | | checkdesc: '1234', |
| | | code: 'BW001', |
| | | name: 'é¨ä½22222', |
| | | seq: 1, |
| | | cycle: 'D', |
| | | isscan: 'N', |
| | | inputValue: '', |
| | | isOK: 'OK', |
| | | isDisabled: false, |
| | | }, |
| | | { |
| | | checkdesc: 'æ°åæ£å¸¸10å¸ï¼æé«ä¸è¶
è¿10.5å¸ï¼æä½ä¸ä½äº9.7', |
| | | code: 'BW003', |
| | | name: 'é¨ä½3', |
| | | seq: 2, |
| | | cycle: 'D', |
| | | isscan: 'N', |
| | | isOK: 'OK', |
| | | inputValue: '', |
| | | isDisabled: true, |
| | | }, |
| | | ] |
| | | |
| | | let radioValue = '' |
| | | let resultValue = '' |
| | | |
| | | |
| | | function loadNodes() { |
| | | let li = null |
| | | hl = document.getElementById('contentLeft'); |
| | | |
| | | topContent.forEach((item, index) => { |
| | | li = document.createElement('div'); |
| | | li.code = item.code |
| | | li.id = item.code |
| | | let html = '<div class="createElementDiv">' |
| | | html += '<div style="">' + |
| | | 'å·¥ä½ç¼ç ï¼' + item.code + '</br>' + 'å·¥ä½åç§°ï¼' + item.name + '</br>' + 'ç产车é´ï¼' + item.wksp_name + |
| | | '</div><input type="radio" class="radioClass" style="margin-right:16px;background-color:red !important;color:red !important;" name="radioValue"></input>' |
| | | html += '</div>' |
| | | |
| | | li.setAttribute('onclick', 'createElementDivClick(code)') |
| | | li.innerHTML = html; |
| | | hl.insertBefore(li, hl.childNodes[index]); |
| | | |
| | | }) |
| | | |
| | | |
| | | if (hl.querySelectorAll("div")[1]) { |
| | | hl.querySelectorAll("div")[1].querySelectorAll("input")[0].checked = true |
| | | // createElementDivClick(topContent[0].code) |
| | | } |
| | | |
| | | } |
| | | |
| | | function createElementDivClick(code) { |
| | | |
| | | let node = document.getElementById(code) |
| | | node.querySelectorAll("div.createElementDiv>input")[0].checked = true |
| | | |
| | | get('AppDeviceManage/SelectScanDeviceQrCodeItem', { |
| | | eqpcode: code |
| | | }).then(res => { |
| | | |
| | | vant.Toast(JSON.stringify(res.data)) |
| | | }) |
| | | } |
| | | |
| | | function scaned(r) { |
| | | |
| | | get('AppDeviceManage/CheckScanDeviceQrCodeData', { |
| | | eqpcode: r |
| | | }).then(res => { |
| | | |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code !== null) { |
| | | // alert(JSON.stringify(res.data)) |
| | | // alert(JSON.stringify(res.data)) |
| | | let li = null |
| | | hl = document.getElementById('contentLeft'); |
| | | |
| | | li = document.createElement('div'); |
| | | li.code = res.data[0].code |
| | | li.id = res.data[0].code |
| | | let html = '<div class="createElementDiv">' |
| | | html += '<div style="">' + |
| | | 'å·¥ä½ç¼ç ï¼' + res.data[0].code + '</br>' + 'å·¥ä½åç§°ï¼' + res.data[0].name + '</br>' + 'ç产车é´ï¼' + res |
| | | .data[0] |
| | | .wksp_name + |
| | | '</div><input style="margin-right:16px;background-color:red !important;color:red !important;" type="radio" name="radioValue"></input>' |
| | | html += '</div>' |
| | | |
| | | li.setAttribute('onclick', 'createElementDivClick(code)') |
| | | li.innerHTML = html; |
| | | hl.insertBefore(li, hl.childNodes[0]); |
| | | |
| | | |
| | | if (hl.querySelectorAll("div")[1]) { |
| | | hl.querySelectorAll("div")[1].querySelectorAll("input")[0].checked = true |
| | | createElementDivClick(res.data[0].code) |
| | | } |
| | | topContent.unshift({ |
| | | code: res.data[0].code, |
| | | name: res.data[0].name, |
| | | wksp_name: res[0].data.wksp_name |
| | | }) |
| | | |
| | | } |
| | | |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code === null) { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: res.Message |
| | | }); |
| | | } |
| | | }) |
| | | |
| | | } |
| | | |
| | | |
| | | function scaned2(r) { |
| | | alert(r) |
| | | } |
| | | |
| | | function del() { |
| | | let node = document.getElementById('contentLeft') |
| | | node.removeChild(document.getElementById('SB001')) |
| | | } |
| | | </script> |
| | | </head> |
| | | <body onload="loadNodes()"> |
| | | <!-- <body> --> |
| | | <div id="app"> |
| | | |
| | | <div class="body"> |
| | | |
| | | <van-nav-bar title="æ¥å¸¸ç¹æ£" @click-right="onClickRight" left-arrow @click-left="onClickleft"> |
| | | <template #right> |
| | | <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" |
| | | trigger="click" :actions="actions" @select="onSelect"> |
| | | <template #reference> |
| | | <van-icon name="bars" size='20' color='#fff' /> |
| | | </template> |
| | | </van-popover> |
| | | </template> |
| | | </van-nav-bar> |
| | | |
| | | |
| | | <div class="head"> |
| | | <div class="head_block"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | æ«æç¹æ£å·¥ä½ |
| | | </div> |
| | | </div> |
| | | |
| | | <div style="margin-right: 10px;"> |
| | | <van-icon name="scan" color='red' size='24' @click='topScanClick()' /> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div class="flex_between" style=""> |
| | | <div id="contentLeft" style="width: 100%;"> |
| | | </div> |
| | | <div id="contentRight"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="head" style="margin-bottom: 15px;padding-bottom: 10px;" |
| | | :style="{marginTop:topContent.length===0?'78px':'0'}"> |
| | | <div class="head_block" style="margin-bottom:10px;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£é¡¹ç®å
容 |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div class="center_border flex_column" style="margin: 5px;" v-for="item in centerContent" |
| | | :key="item.code"> |
| | | <div class="flex_between"> |
| | | <div class="center_title">{{item.name}}</div> |
| | | <!-- v-if="item.isscan==='Y'" --> |
| | | <div style="margin-right: 10px;"> |
| | | <van-icon name="scan" color='red' size='24' @click='centerScanClick(item.code)' /> |
| | | </div> |
| | | </div> |
| | | <div class="flex_between "> |
| | | <div class='flex_between'> |
| | | <van-field class="vanFieldInput" style="" border v-model="item.inputValue" |
| | | label="请è¾å
¥" /> |
| | | </div> |
| | | |
| | | |
| | | <div class="" style="width: 40%;display: flex;justify-content: space-around;"> |
| | | <van-button class="buttonSmall" size="small" :plain="item.isOK!=='OK'" |
| | | @click="bwClick(item,'OK')" type="primary">æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="item.isOK!=='NG'" |
| | | @click="bwClick(item,'NG')" type="danger">å¼å¸¸</van-button> |
| | | </div> |
| | | </div> |
| | | <div style="font-weight: lighter;font-size: 14px;padding-right: 5px"> |
| | | {{item.checkdesc}} |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | <!-- |
| | | <div style="position:fixed;bottom: 0;width: 100%;display: flex;justify-content: center;flex-direction: column;align-items: center"> |
| | | <div style="display: flex;float: left;"> |
| | | 111 |
| | | </div> |
| | | <van-button class="vanButtonInfo" type="info">确认æäº¤</van-button> |
| | | </div> --> |
| | | |
| | | |
| | | <div style=""> |
| | | <div class="footer"> |
| | | <div class="head_block" style="margin-bottom: 20rpx;align-items: center;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£ç»æ |
| | | </div> |
| | | </div> |
| | | <div class="flex_center" style="width: 30%;display: flex;justify-content: space-around;"> |
| | | |
| | | <van-button class="buttonSmall" size="small" :plain="resultValue!=='OK'" |
| | | @click="resultClick('OK')" type="primary">æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="resultValue!=='NG'" |
| | | @click="resultClick('NG')" type="danger">å¼å¸¸</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div |
| | | style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center"> |
| | | <van-button class="vanButtonInfo" type="info">确认æäº¤</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | </div> |
| | | |
| | | <!-- <button @click="del">å é¤èç¹</button> --> |
| | | |
| | | |
| | | <van-overlay :show="overlayShow" @click="overlayShow=false" /> |
| | | |
| | | |
| | | </div> |
| | | </body> |
| | | <script> |
| | | var app = new Vue({ |
| | | el: '#app', |
| | | data: function() { |
| | | return { |
| | | overlayShow: false, |
| | | showPopover: false, |
| | | actions: [{ |
| | | icon: 'description', |
| | | text: 'æä½æå¯¼' |
| | | }, { |
| | | icon: 'award-o', |
| | | text: 'æå追溯' |
| | | }, { |
| | | icon: 'revoke', |
| | | text: 'éåºç»å½' |
| | | }], |
| | | |
| | | |
| | | radioValue: '', |
| | | |
| | | |
| | | |
| | | } |
| | | }, |
| | | watch: { |
| | | |
| | | }, |
| | | created() { |
| | | |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | methods: { |
| | | |
| | | resultClick(val) { |
| | | resultValue = val |
| | | this.$forceUpdate() |
| | | }, |
| | | |
| | | selected(id) { |
| | | alert(id) |
| | | }, |
| | | |
| | | // æ«æç¹æ£å·¥ä½æ«æ |
| | | topScanClick() { |
| | | createWithoutTitle('../../components/barcode_scan.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | // ç¹æ£é¡¹ç®å
å®¹æ«æ |
| | | centerScanClick() { |
| | | createWithoutTitle('../../components/barcode_scan2.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | // é¨ä½æ£å¸¸ å¼å¸¸æé®ç¹å» |
| | | bwClick(item, val) { |
| | | item.isOK = val |
| | | if (centerContent.every(item => item.isOK !== '')) { |
| | | // if (centerContent.every(item => item.isOK === 'OK')) { |
| | | // this.resultValue = 'OK' |
| | | // } else { |
| | | // this.resultValue = 'NG' |
| | | // } |
| | | } |
| | | this.$forceUpdate() //强å¶è§å¾æ´æ° |
| | | }, |
| | | |
| | | groupChange(code) { |
| | | |
| | | }, |
| | | |
| | | |
| | | onClickleft() { |
| | | history.back() |
| | | }, |
| | | onClickRight() { |
| | | this.overlayShow = true |
| | | }, |
| | | onSelect(action) { |
| | | vant.Toast(action.text); |
| | | this.overlayShow = false |
| | | }, |
| | | } |
| | | }) |
| | | </script> |
| | | <style type="text/css"> |
| | | @import url('../../css/global.css'); |
| | | |
| | | body { |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .body { |
| | | min-height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | background-color: #fff; |
| | | position: relative; |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | | background-color: #2651d8; |
| | | height: 44px; |
| | | } |
| | | |
| | | .van-nav-bar__title { |
| | | color: #fff; |
| | | letter-spacing: 2px; |
| | | } |
| | | |
| | | .van-nav-bar__arrow { |
| | | color: #fff !important; |
| | | } |
| | | |
| | | .createElementDiv { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | margin-bottom: 10px; |
| | | margin-left: 20px; |
| | | } |
| | | |
| | | .vanFieldInput { |
| | | height: 36px; |
| | | line-height: 36px; |
| | | align-items: center; |
| | | width: 90%; |
| | | /* border-radius: 5px; */ |
| | | margin: 5px 0; |
| | | /* background-color: #fff; */ |
| | | } |
| | | |
| | | .buttonSmall { |
| | | /* border-radius: 5px; */ |
| | | } |
| | | |
| | | .vanButtonInfo { |
| | | width: 100%; |
| | | letter-spacing: 2px; |
| | | height: 50px; |
| | | font-size: 18px; |
| | | /* margin-left: 0; */ |
| | | |
| | | } |
| | | |
| | | /* |
| | | ::v-deep input[type="radio"] { |
| | | background-color: red !important; |
| | | color: red !important; |
| | | position: absolute !important; |
| | | |
| | | } |
| | | |
| | | ::v-deep .radioClass { |
| | | background-color: red !important; |
| | | color: red !important; |
| | | position: absolute !important; |
| | | } */ |
| | | |
| | | |
| | | /* input[type="radio"]+label ::before { |
| | | content: ''; |
| | | display: inline-block; |
| | | vertical-align: middle; |
| | | width: 15px; |
| | | height: 15px; |
| | | margin-right: 5px; |
| | | box-sizing: border-box; |
| | | border-radius: 50%; |
| | | margin-bottom: 4px; |
| | | border: 1px solid #bfcbd9; |
| | | } */ |
| | | </style> |
| | | </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"/> |
| | | <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 img = null; |
| | | var blist = []; |
| | | function scaned(t, r, f){ |
| | | var d = new Date(); |
| | | var h=d.getHours(),m=d.getMinutes(),s=d.getSeconds(),ms=d.getMilliseconds(); |
| | | if(h < 10){ h='0'+h; } |
| | | if(m < 10){ m='0'+m; } |
| | | if(s < 10){ s='0'+s; } |
| | | if(ms < 10){ ms='00'+ms; } |
| | | else if(ms < 100){ ms='0'+ms; } |
| | | var ts = '['+h+':'+m+':'+s+'.'+ms+']'; |
| | | var li=null,hl = document.getElementById('history'); |
| | | if(blist.length > 0){ |
| | | li = document.createElement('li'); |
| | | li.className = 'ditem'; |
| | | hl.insertBefore(li, hl.childNodes[0]); |
| | | } else{ |
| | | li = document.getElementById('nohistory'); |
| | | } |
| | | li.id = blist.length; |
| | | var html = '['+h+':'+m+':'+s+'.'+ms+']'+'ãã'+t+'ç <div class="hdata">'; |
| | | html += r; |
| | | html += '</div>'; |
| | | li.innerHTML = html; |
| | | li.setAttribute('onclick', 'selected(id)'); |
| | | blist[blist.length] = {type:t,result:r,file:f}; |
| | | update(t, r, f); |
| | | } |
| | | function selected(id){ |
| | | var h = blist[id]; |
| | | update( h.type, h.result, h.file ); |
| | | if(h.result.indexOf('http://')==0 || h.result.indexOf('https://')==0){ |
| | | plus.nativeUI.confirm(h.result, function(i){ |
| | | if(i.index == 0){ |
| | | plus.runtime.openURL(h.result); |
| | | var img = null; |
| | | var blist = []; |
| | | |
| | | function scaned(t, r, f) { |
| | | var d = new Date(); |
| | | var h = d.getHours(), |
| | | m = d.getMinutes(), |
| | | s = d.getSeconds(), |
| | | ms = d.getMilliseconds(); |
| | | if (h < 10) { |
| | | h = '0' + h; |
| | | } |
| | | if (m < 10) { |
| | | m = '0' + m; |
| | | } |
| | | if (s < 10) { |
| | | s = '0' + s; |
| | | } |
| | | if (ms < 10) { |
| | | ms = '00' + ms; |
| | | } else if (ms < 100) { |
| | | ms = '0' + ms; |
| | | } |
| | | var ts = '[' + h + ':' + m + ':' + s + '.' + ms + ']'; |
| | | var li = null, |
| | | hl = document.getElementById('history'); |
| | | if (blist.length > 0) { |
| | | li = document.createElement('li'); |
| | | li.className = 'ditem'; |
| | | hl.insertBefore(li, hl.childNodes[0]); |
| | | } else { |
| | | li = document.getElementById('nohistory'); |
| | | } |
| | | li.id = blist.length; |
| | | var html = '[' + h + ':' + m + ':' + s + '.' + ms + ']' + 'ãã' + t + 'ç <div class="hdata">'; |
| | | html += r; |
| | | html += '</div>'; |
| | | li.innerHTML = html; |
| | | li.setAttribute('onclick', 'selected(id)'); |
| | | blist[blist.length] = { |
| | | type: t, |
| | | result: r, |
| | | file: f |
| | | }; |
| | | update(t, r, f); |
| | | } |
| | | }, '', ['æå¼', 'åæ¶']); |
| | | } else{ |
| | | plus.nativeUI.alert(h.result); |
| | | } |
| | | } |
| | | function update(t, r, f){ |
| | | outSet('æ«ææåï¼'); |
| | | outLine(t); |
| | | outLine(r); |
| | | outLine('\nå¾çå°åï¼'+f); |
| | | if(!f || f=='null'){ |
| | | img.src = '../img/barcode.png'; |
| | | } else{ |
| | | plus.io.resolveLocalFileSystemURL(f, function(entry){ |
| | | img.src=entry.toLocalURL(); |
| | | }); |
| | | //img.src = 'http://localhost:13131/'+f; |
| | | } |
| | | } |
| | | function onempty(){ |
| | | if(window.plus){ |
| | | plus.nativeUI.alert('æ æ«æè®°å½'); |
| | | } else { |
| | | alert('æ æ«æè®°å½'); |
| | | } |
| | | } |
| | | function cleanHistroy(){ |
| | | if(blist.length > 0){ |
| | | var hl = document.getElementById('history'); |
| | | hl.innerHTML = '<li id="nohistory" class="ditem" onclick="onempty();">æ åå²è®°å½ </li>'; |
| | | } |
| | | plus.io.resolveLocalFileSystemURL('_doc/barcode/', function(entry){ |
| | | entry.removeRecursively(function(){ |
| | | // Success |
| | | }, function(e){ |
| | | //alert( "failed"+e.message ); |
| | | }); |
| | | }); |
| | | } |
| | | // æå¼äºç»´ç æ«æçé¢ |
| | | function openBarcode(){ |
| | | createWithoutTitle('barcode_scan.html', { |
| | | titleNView:{ |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // æå¼èªå®ä¹æ«æçé¢ |
| | | function openBarcodeCustom(){ |
| | | createWithoutTitle('barcode_custom.html', { |
| | | titleNView:{ |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue401', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | |
| | | function selected(id) { |
| | | var h = blist[id]; |
| | | update(h.type, h.result, h.file); |
| | | if (h.result.indexOf('http://') == 0 || h.result.indexOf('https://') == 0) { |
| | | plus.nativeUI.confirm(h.result, function(i) { |
| | | if (i.index == 0) { |
| | | plus.runtime.openURL(h.result); |
| | | } |
| | | }, '', ['æå¼', 'åæ¶']); |
| | | } else { |
| | | plus.nativeUI.alert(h.result); |
| | | } |
| | | } |
| | | |
| | | function update(t, r, f) { |
| | | outSet('æ«ææåï¼'); |
| | | outLine(t); |
| | | outLine(r); |
| | | outLine('\nå¾çå°åï¼' + f); |
| | | if (!f || f == 'null') { |
| | | img.src = '../img/barcode.png'; |
| | | } else { |
| | | plus.io.resolveLocalFileSystemURL(f, function(entry) { |
| | | img.src = entry.toLocalURL(); |
| | | }); |
| | | //img.src = 'http://localhost:13131/'+f; |
| | | } |
| | | } |
| | | |
| | | function onempty() { |
| | | if (window.plus) { |
| | | plus.nativeUI.alert('æ æ«æè®°å½'); |
| | | } else { |
| | | alert('æ æ«æè®°å½'); |
| | | } |
| | | } |
| | | |
| | | function cleanHistroy() { |
| | | if (blist.length > 0) { |
| | | var hl = document.getElementById('history'); |
| | | hl.innerHTML = '<li id="nohistory" class="ditem" onclick="onempty();">æ åå²è®°å½ </li>'; |
| | | } |
| | | plus.io.resolveLocalFileSystemURL('_doc/barcode/', function(entry) { |
| | | entry.removeRecursively(function() { |
| | | // Success |
| | | }, function(e) { |
| | | //alert( "failed"+e.message ); |
| | | }); |
| | | }); |
| | | } |
| | | // æå¼äºç»´ç æ«æçé¢ |
| | | function openBarcode() { |
| | | createWithoutTitle('barcode_scan.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // æå¼èªå®ä¹æ«æçé¢ |
| | | function openBarcodeCustom() { |
| | | createWithoutTitle('barcode_custom.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue401', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | </script> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" /> |
| | | <style type="text/css" media="screen"> |
| | | .hdata { |
| | | color: #e1673e; |
| | | font-size: 14px; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | white-space: nowrap; |
| | | } |
| | | .hdata { |
| | | color: #e1673e; |
| | | font-size: 14px; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | white-space: nowrap; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body onload="img=document.getElementById('bimg')"> |
| | | <br/> |
| | | <img style="width:40%" id="bimg" src="../img/barcode.png"/> |
| | | <br/> |
| | | <br /> |
| | | <img style="width:40%" id="bimg" src="../img/barcode.png" /> |
| | | <br /> |
| | | <div class="button" onclick="openBarcode()">æ«ä¸æ«</div> |
| | | <div class="button" onclick="openBarcodeCustom()">æ«ä¸æ«ï¼èªå®ä¹ï¼</div> |
| | | <br/> |
| | | <br /> |
| | | <ul id="history" class="dlist" style="text-align:left;"> |
| | | <li id="nohistory" class="ditem" onclick="onempty()">æ åå²è®°å½ </li> |
| | | <li id="nohistory" class="ditem" onclick="onempty()">æ åå²è®°å½ </li> |
| | | </ul> |
| | | <br/> |
| | | <br /> |
| | | <div class="button button-waring" onclick="cleanHistroy()">æ¸
空åå²è®°å½</div> |
| | | <div id="outpos"/> |
| | | <div id="outpos" /> |
| | | <div id="output"> |
| | | Barcodeæä¾äºç»´ç æ«æè¯å«åè½ï¼æ¯æè°ç¨æå头峿¶æ«æäºç»´ç ï¼ä¹å¯ç´æ¥è¾å
¥å¾çè¿è¡æ«æè¯å«ã |
| | | Barcodeæä¾äºç»´ç æ«æè¯å«åè½ï¼æ¯æè°ç¨æå头峿¶æ«æäºç»´ç ï¼ä¹å¯ç´æ¥è¾å
¥å¾çè¿è¡æ«æè¯å«ã |
| | | </div> |
| | | </body> |
| | | </html> |
| | | </html> |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"/> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"/> |
| | | <meta name="HandheldFriendly" content="true"/> |
| | | <meta name="MobileOptimized" content="320"/> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady(){ |
| | | // è·åçªå£å¯¹è±¡ |
| | | ws=plus.webview.currentWebview(); |
| | | nv=ws.getTitleNView(); |
| | | wo=ws.opener(); |
| | | // å¼å§æ«æ |
| | | ws.addEventListener('show', function(){ |
| | | scan=new plus.barcode.Barcode('bcid',[plus.barcode.QR,plus.barcode.EAN8,plus.barcode.EAN13],{frameColor:'#00FF00',scanbarColor:'#00FF00'}); |
| | | scan.onmarked=onmarked; |
| | | scan.start({conserve:true,filename:'_doc/barcode/'}); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', plusReady, false); |
| | | var ws = null, |
| | | wo = null; |
| | | var scan = null; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | ws = plus.webview.currentWebview(); |
| | | nv = ws.getTitleNView(); |
| | | wo = ws.opener(); |
| | | // å¼å§æ«æ |
| | | ws.addEventListener('show', function() { |
| | | scan = new plus.barcode.Barcode('bcid', [plus.barcode.QR, plus.barcode.EAN8, plus.barcode.EAN13], { |
| | | frameColor: '#00FF00', |
| | | scanbarColor: '#00FF00' |
| | | }); |
| | | scan.onmarked = onmarked; |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('"+ type +"','"+ result +"','"+ file +"');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | var view = null; |
| | | function createSubview(){ |
| | | view = new plus.nativeObj.View('nbutton', { |
| | | bottom: '20px', |
| | | left: '30%', |
| | | width: '40%', |
| | | height: '44px' |
| | | }, [{ |
| | | tag: 'rect', |
| | | id: 'rect', |
| | | rectStyles: { |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }},{ |
| | | tag: 'font', |
| | | id: 'text', |
| | | text: 'æãå', |
| | | textStyles: { |
| | | color: '#FFFFFF' |
| | | } |
| | | }]); |
| | | // å¤çäºä»¶ |
| | | view.addEventListener('click', function(e){ |
| | | switchScan(); |
| | | }, false); |
| | | view.addEventListener('touchstart', function(e){ |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.5)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | view.addEventListener('touchend', function(e){ |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | ws.append(view); |
| | | } |
| | | // å¼å
³éªå
ç¯ |
| | | var bFlash = false; |
| | | var AVCaptureDevice=null; |
| | | var Camera=null; |
| | | function switchFlash(){ |
| | | bFlash = !bFlash; |
| | | scan.setFlash(bFlash); |
| | | ws.setStyle({titleNView: { |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: (bFlash?'\ue400':'\ue401'), |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | }}); |
| | | } |
| | | // åæ¢æ«æ |
| | | var bScan = false; |
| | | function switchScan(){ |
| | | if(bScan){ |
| | | scan.start({conserve:true, filename:'_doc/barcode/'}); |
| | | view&&(view.drawText('æãå', {}, {color:'#FFFFFF'}, 'text')); |
| | | }else{ |
| | | scan.cancel(); |
| | | view&&(view.drawText('å¼ãå§', {}, {color:'#FFFFFF'}, 'text')); |
| | | } |
| | | bScan=!bScan; |
| | | } |
| | | // äºç»´ç æ«ææå |
| | | 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | var view = null; |
| | | |
| | | function createSubview() { |
| | | view = new plus.nativeObj.View('nbutton', { |
| | | bottom: '20px', |
| | | left: '30%', |
| | | width: '40%', |
| | | height: '44px' |
| | | }, [{ |
| | | tag: 'rect', |
| | | id: 'rect', |
| | | rectStyles: { |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | } |
| | | }, { |
| | | tag: 'font', |
| | | id: 'text', |
| | | text: 'æãå', |
| | | textStyles: { |
| | | color: '#FFFFFF' |
| | | } |
| | | }]); |
| | | // å¤çäºä»¶ |
| | | view.addEventListener('click', function(e) { |
| | | switchScan(); |
| | | }, false); |
| | | view.addEventListener('touchstart', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.5)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | view.addEventListener('touchend', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | ws.append(view); |
| | | } |
| | | // å¼å
³éªå
ç¯ |
| | | var bFlash = false; |
| | | var AVCaptureDevice = null; |
| | | var Camera = null; |
| | | |
| | | function switchFlash() { |
| | | bFlash = !bFlash; |
| | | scan.setFlash(bFlash); |
| | | ws.setStyle({ |
| | | titleNView: { |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: (bFlash ? '\ue400' : '\ue401'), |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // åæ¢æ«æ |
| | | var bScan = false; |
| | | |
| | | function switchScan() { |
| | | if (bScan) { |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | view && (view.drawText('æãå', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } else { |
| | | scan.cancel(); |
| | | view && (view.drawText('å¼ãå§', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } |
| | | bScan = !bScan; |
| | | } |
| | | </script> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/> |
| | | <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: 0px; |
| | | text-align: center; |
| | | } |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | #bcid { |
| | | width: 100%; |
| | | position: absolute; |
| | | top: 0px; |
| | | bottom: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"/> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"/> |
| | | <meta name="HandheldFriendly" content="true"/> |
| | | <meta name="MobileOptimized" content="320"/> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady(){ |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/'}); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', plusReady, false); |
| | | var ws = null, |
| | | wo = null; |
| | | var scan = null; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('"+ type +"','"+ result +"','"+ file +"');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview(){ |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture(){ |
| | | plus.gallery.pick(function(path){ |
| | | plus.barcode.scan(path,onmarked,function(error){ |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err){ |
| | | console.log('Failed: '+err.message); |
| | | }); |
| | | } |
| | | // äºç»´ç æ«ææå |
| | | 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview() { |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture() { |
| | | plus.gallery.pick(function(path) { |
| | | plus.barcode.scan(path, onmarked, function(error) { |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err) { |
| | | console.log('Failed: ' + err.message); |
| | | }); |
| | | } |
| | | </script> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/> |
| | | <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: 0px; |
| | | text-align: center; |
| | | } |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | #bcid { |
| | | width: 100%; |
| | | position: absolute; |
| | | top: 0px; |
| | | bottom: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | ws = plus.webview.currentWebview(); |
| | | nv = ws.getTitleNView(); |
| | | wo = ws.opener(); |
| | | // å¼å§æ«æ |
| | | ws.addEventListener('show', function() { |
| | | scan = new plus.barcode.Barcode('bcid', [plus.barcode.QR, plus.barcode.EAN8, plus.barcode.EAN13], { |
| | | frameColor: '#00FF00', |
| | | scanbarColor: '#00FF00' |
| | | }); |
| | | scan.onmarked = onmarked; |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | var view = null; |
| | | |
| | | function createSubview() { |
| | | view = new plus.nativeObj.View('nbutton', { |
| | | bottom: '20px', |
| | | left: '30%', |
| | | width: '40%', |
| | | height: '44px' |
| | | }, [{ |
| | | tag: 'rect', |
| | | id: 'rect', |
| | | rectStyles: { |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | } |
| | | }, { |
| | | tag: 'font', |
| | | id: 'text', |
| | | text: 'æãå', |
| | | textStyles: { |
| | | color: '#FFFFFF' |
| | | } |
| | | }]); |
| | | // å¤çäºä»¶ |
| | | view.addEventListener('click', function(e) { |
| | | switchScan(); |
| | | }, false); |
| | | view.addEventListener('touchstart', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.5)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | view.addEventListener('touchend', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | ws.append(view); |
| | | } |
| | | // å¼å
³éªå
ç¯ |
| | | var bFlash = false; |
| | | var AVCaptureDevice = null; |
| | | var Camera = null; |
| | | |
| | | function switchFlash() { |
| | | bFlash = !bFlash; |
| | | scan.setFlash(bFlash); |
| | | ws.setStyle({ |
| | | titleNView: { |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: (bFlash ? '\ue400' : '\ue401'), |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // åæ¢æ«æ |
| | | var bScan = false; |
| | | |
| | | function switchScan() { |
| | | if (bScan) { |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | view && (view.drawText('æãå', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } else { |
| | | scan.cancel(); |
| | | view && (view.drawText('å¼ãå§', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } |
| | | bScan = !bScan; |
| | | } |
| | | </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: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | | <div id="bcid"> |
| | | <div style="height:40%"></div> |
| | | <p class="tip">...è½½å
¥ä¸...</p> |
| | | </div> |
| | | </body> |
| | | </html> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | // wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | wo.evalJS("scaned('" + result + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview() { |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture() { |
| | | plus.gallery.pick(function(path) { |
| | | plus.barcode.scan(path, onmarked, function(error) { |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err) { |
| | | console.log('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: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | | <div id="bcid"> |
| | | <div style="height:40%"></div> |
| | | <p class="tip">...è½½å
¥ä¸...</p> |
| | | </div> |
| | | </body> |
| | | </html> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | // wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | wo.evalJS("scaned2('" + result + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview() { |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture() { |
| | | plus.gallery.pick(function(path) { |
| | | plus.barcode.scan(path, onmarked, function(error) { |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err) { |
| | | console.log('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: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | | <div id="bcid"> |
| | | <div style="height:40%"></div> |
| | | <p class="tip">...è½½å
¥ä¸...</p> |
| | | </div> |
| | | </body> |
| | | </html> |
| | |
| | | .head { |
| | | background-color: aliceblue; |
| | | padding-top: 10px; |
| | | padding-bottom: 10px; |
| | | margin: 5px 8px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .head_block { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .head_left { |
| | | display: flex; |
| | | } |
| | | |
| | | .head_bar { |
| | | width: 5px; |
| | | height: 20px; |
| | | background-color: red; |
| | | } |
| | | |
| | | .head_title { |
| | | margin-left: 5px; |
| | | } |
| | | |
| | | |
| | | .flex_column { |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .flex_between { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | |
| | | .flex_center { |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .center_title{ |
| | | font-weight: bolder; |
| | | } |
| | | .center_border { |
| | | border: 1px solid #ccc; |
| | | min-height: 50px; |
| | | border-radius: 5px; |
| | | margin: 15px 0 0 0; |
| | | padding: 5px 0px 5px 10px; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | .footer { |
| | | position: fixed; |
| | | bottom: 0; |
| | | background-color: aliceblue; |
| | | min-height: 100px; |
| | | padding-top: 10px; |
| | | margin: 5px 8px 0; |
| | | width: 96%; |
| | | padding-bottom: 10px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | |
| | | <!DOCTYPE HTML> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> |
| | | <meta name="HandheldFriendly" content="true"> |
| | | <meta name="MobileOptimized" content="320"> |
| | | <title>Barcode Document</title> |
| | | <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8"> |
| | | <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8"> |
| | | <script type="text/javascript" src="res/doc.js" charset="utf-8"></script><script type="text/javascript" src="res/prettify.js" charset="utf-8"></script> |
| | | </head> |
| | | <body><div id="content" class="content"> |
| | | <h1><a name="plus.barcode">barcode</a></h1> |
| | | <p>Barcode模åç®¡çæ¡ç ï¼ä¸ç»´ç åäºç»´ç ï¼æ«æè¯å«ï¼æ¯æå¸¸è§çä¸ç»´ç ï¼å¦EAN13ç ï¼åäºç»´ç ï¼å¦QRç ï¼ãéè¿è°ç¨è®¾å¤çæå头对æ¡ç è¿è¡æ«æè¯å«ï¼æ«æå°æ¡ç åè¿è¡è§£ç å¹¶è¿åç æ°æ®å
容åç ç±»åã</p> |
| | | <h2>常éï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.QR">QR</a>: QRäºç»´ç ï¼æ°å¼ä¸º0</li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN13">EAN13</a>: EANæ¡å½¢ç æ åçï¼æ°å¼ä¸º1</li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN8">EAN8</a>: ENAæ¡å½¢ç ç®çï¼æ°å¼ä¸º2</li> |
| | | <li> |
| | | <a href="#plus.barcode.AZTEC">AZTEC</a>: Aztecäºç»´ç ï¼æ°å¼ä¸º3</li> |
| | | <li> |
| | | <a href="#plus.barcode.DATAMATRIX">DATAMATRIX</a>: Data Matrixäºç»´ç ï¼æ°å¼ä¸º4</li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCA">UPCA</a>: UPCæ¡å½¢ç æ åçï¼æ°å¼ä¸º5</li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCE">UPCE</a>: UPCæ¡å½¢ç 缩ççï¼æ°å¼ä¸º6</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODABAR">CODABAR</a>: Codabaræ¡å½¢ç ï¼æ°å¼ä¸º7</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE39">CODE39</a>: Code39æ¡å½¢ç ï¼æ°å¼ä¸º8</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE93">CODE93</a>: Code93æ¡å½¢ç ï¼æ°å¼ä¸º9</li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE128">CODE128</a>: Code128æ¡å½¢ç ï¼æ°å¼ä¸º10</li> |
| | | <li> |
| | | <a href="#plus.barcode.ITF">ITF</a>: ITFæ¡å½¢ç ï¼æ°å¼ä¸º11</li> |
| | | <li> |
| | | <a href="#plus.barcode.MAXICODE">MAXICODE</a>: MaxiCodeäºç»´ç ï¼æ°å¼ä¸º12</li> |
| | | <li> |
| | | <a href="#plus.barcode.PDF417">PDF417</a>: PDF 417äºç»´æ¡ç ï¼æ°å¼ä¸º13</li> |
| | | <li> |
| | | <a href="#plus.barcode.RSS14">RSS14</a>: RSS 14æ¡å½¢ç»åç ï¼æ°å¼ä¸º14</li> |
| | | <li> |
| | | <a href="#plus.barcode.RSSEXPANDED">RSSEXPANDED</a>: æ©å±å¼RSSæ¡å½¢ç»åç ï¼æ°å¼ä¸º15</li> |
| | | </ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.scan">scan</a>: æ«ç è¯å«å¾çä¸çæ¡ç </li> |
| | | <li> |
| | | <a href="#plus.barcode.create">create</a>: å建æ«ç è¯å«æ§ä»¶å¯¹è±¡</li> |
| | | <li> |
| | | <a href="#plus.barcode.getBarcodeById">getBarcodeById</a>: æ¥æ¾æ«ç è¯å«æ§ä»¶å¯¹è±¡</li> |
| | | </ul> |
| | | <h2>对象ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode">Barcode</a>: æ«ç è¯å«æ§ä»¶å¯¹è±¡</li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeStyles">BarcodeStyles</a>: Barcodeæ«ç æ§ä»¶æ ·å¼</li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeOptions">BarcodeOptions</a>: æ¡ç è¯å«æ§ä»¶æ«æåæ°</li> |
| | | </ul> |
| | | <h2>åè°æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a>: æ«ç è¯å«æååè°å½æ°</li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeErrorCallback">BarcodeErrorCallback</a>: æ«ç è¯å«é误åè°å½æ°</li> |
| | | </ul> |
| | | <h2>æéï¼</h2> |
| | | <p>permissions</p> |
| | | <pre class="prettyprint linenums"> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> |
| | | <meta name="HandheldFriendly" content="true"> |
| | | <meta name="MobileOptimized" content="320"> |
| | | <title>Barcode Document</title> |
| | | <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8"> |
| | | <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8"> |
| | | <script type="text/javascript" src="res/doc.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="res/prettify.js" charset="utf-8"></script> |
| | | </head> |
| | | <body> |
| | | <div id="content" class="content"> |
| | | <h1><a name="plus.barcode">barcode</a></h1> |
| | | <p>Barcode模åç®¡çæ¡ç ï¼ä¸ç»´ç åäºç»´ç ï¼æ«æè¯å«ï¼æ¯æå¸¸è§çä¸ç»´ç ï¼å¦EAN13ç ï¼åäºç»´ç ï¼å¦QRç ï¼ãéè¿è°ç¨è®¾å¤çæå头对æ¡ç è¿è¡æ«æè¯å«ï¼æ«æå°æ¡ç åè¿è¡è§£ç å¹¶è¿åç æ°æ®å
容åç ç±»åã</p> |
| | | <h2>常éï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.QR">QR</a>: QRäºç»´ç ï¼æ°å¼ä¸º0 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN13">EAN13</a>: EANæ¡å½¢ç æ åçï¼æ°å¼ä¸º1 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.EAN8">EAN8</a>: ENAæ¡å½¢ç ç®çï¼æ°å¼ä¸º2 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.AZTEC">AZTEC</a>: Aztecäºç»´ç ï¼æ°å¼ä¸º3 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.DATAMATRIX">DATAMATRIX</a>: Data Matrixäºç»´ç ï¼æ°å¼ä¸º4 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCA">UPCA</a>: UPCæ¡å½¢ç æ åçï¼æ°å¼ä¸º5 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.UPCE">UPCE</a>: UPCæ¡å½¢ç 缩ççï¼æ°å¼ä¸º6 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODABAR">CODABAR</a>: Codabaræ¡å½¢ç ï¼æ°å¼ä¸º7 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE39">CODE39</a>: Code39æ¡å½¢ç ï¼æ°å¼ä¸º8 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE93">CODE93</a>: Code93æ¡å½¢ç ï¼æ°å¼ä¸º9 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.CODE128">CODE128</a>: Code128æ¡å½¢ç ï¼æ°å¼ä¸º10 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.ITF">ITF</a>: ITFæ¡å½¢ç ï¼æ°å¼ä¸º11 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.MAXICODE">MAXICODE</a>: MaxiCodeäºç»´ç ï¼æ°å¼ä¸º12 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.PDF417">PDF417</a>: PDF 417äºç»´æ¡ç ï¼æ°å¼ä¸º13 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.RSS14">RSS14</a>: RSS 14æ¡å½¢ç»åç ï¼æ°å¼ä¸º14 |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.RSSEXPANDED">RSSEXPANDED</a>: æ©å±å¼RSSæ¡å½¢ç»åç ï¼æ°å¼ä¸º15 |
| | | </li> |
| | | </ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.scan">scan</a>: æ«ç è¯å«å¾çä¸çæ¡ç |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.create">create</a>: å建æ«ç è¯å«æ§ä»¶å¯¹è±¡ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.getBarcodeById">getBarcodeById</a>: æ¥æ¾æ«ç è¯å«æ§ä»¶å¯¹è±¡ |
| | | </li> |
| | | </ul> |
| | | <h2>对象ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode">Barcode</a>: æ«ç è¯å«æ§ä»¶å¯¹è±¡ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeStyles">BarcodeStyles</a>: Barcodeæ«ç æ§ä»¶æ ·å¼ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeOptions">BarcodeOptions</a>: æ¡ç è¯å«æ§ä»¶æ«æåæ° |
| | | </li> |
| | | </ul> |
| | | <h2>åè°æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a>: æ«ç è¯å«æååè°å½æ° |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.BarcodeErrorCallback">BarcodeErrorCallback</a>: æ«ç è¯å«é误åè°å½æ° |
| | | </li> |
| | | </ul> |
| | | <h2>æéï¼</h2> |
| | | <p>permissions</p> |
| | | <pre class="prettyprint linenums"> |
| | | { |
| | | // ... |
| | | "permissions":{ |
| | |
| | | } |
| | | } |
| | | </pre> |
| | | <h1><a name="plus.barcode.Barcode">Barcode</a></h1> |
| | | <p>æ«ç è¯å«æ§ä»¶å¯¹è±¡</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h1><a name="plus.barcode.Barcode">Barcode</a></h1> |
| | | <p>æ«ç è¯å«æ§ä»¶å¯¹è±¡</p> |
| | | <pre class="prettyprint linenums"> |
| | | interface plus.barcode.Barcode { |
| | | // Methods |
| | | function void cancel(); |
| | |
| | | function void onmarked(); |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å¯éè¿plus.barcode.createå建ï¼ä¹å¯éè¿new plus.barcode.Barcodeæé ï¼ä»
å¨5+APPä¸ä½¿ç¨ï¼å建ã |
| | | æ«ç è¯å«æ§ä»¶å°ä½¿ç¨è®¾å¤çæå头é¢è§æ«æå
容ï¼å¨æ§ä»¶ä¸æ¾ç¤ºæ«æåºåæ¡çç¨æ·äº¤äºå
ç´ ã |
| | | </p> |
| | | <h2>æé ï¼</h2> |
| | | <ul><li> |
| | | <a href="#plus.barcode.Barcode.Barcode.constructor(domId,%20filters,%20styles)">Barcode.constructor(domId, filters, styles)</a>: æé æ«ç è¯å«æ§ä»¶</li></ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.cancel">cancel</a>: åæ¶æ«ç è¯å«</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.close">close</a>: å
³éæ¡ç è¯å«æ§ä»¶</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setFlash">setFlash</a>: æä½éªå
ç¯</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setStyle">setStyle</a>: 设置æ«ç è¯å«æ§ä»¶çæ ·å¼</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.start">start</a>: å¼å§æ«ç è¯å«</li> |
| | | </ul> |
| | | <h2>äºä»¶ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onmarked">onmarked</a>: æ«ç è¯å«æåäºä»¶</li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onerror">onerror</a>: æ«ç è¯å«é误äºä»¶</li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeStyles">BarcodeStyles</a></h1> |
| | | <p>Barcodeæ«ç æ§ä»¶æ ·å¼</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å¯éè¿plus.barcode.createå建ï¼ä¹å¯éè¿new plus.barcode.Barcodeæé ï¼ä»
å¨5+APPä¸ä½¿ç¨ï¼å建ã |
| | | æ«ç è¯å«æ§ä»¶å°ä½¿ç¨è®¾å¤çæå头é¢è§æ«æå
容ï¼å¨æ§ä»¶ä¸æ¾ç¤ºæ«æåºåæ¡çç¨æ·äº¤äºå
ç´ ã |
| | | </p> |
| | | <h2>æé ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.Barcode.constructor(domId,%20filters,%20styles)">Barcode.constructor(domId, |
| | | filters, styles)</a>: æé æ«ç è¯å«æ§ä»¶ |
| | | </li> |
| | | </ul> |
| | | <h2>æ¹æ³ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.cancel">cancel</a>: åæ¶æ«ç è¯å« |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.close">close</a>: å
³éæ¡ç è¯å«æ§ä»¶ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setFlash">setFlash</a>: æä½éªå
ç¯ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.setStyle">setStyle</a>: 设置æ«ç è¯å«æ§ä»¶çæ ·å¼ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.start">start</a>: å¼å§æ«ç è¯å« |
| | | </li> |
| | | </ul> |
| | | <h2>äºä»¶ï¼</h2> |
| | | <ul> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onmarked">onmarked</a>: æ«ç è¯å«æåäºä»¶ |
| | | </li> |
| | | <li> |
| | | <a href="#plus.barcode.Barcode.onerror">onerror</a>: æ«ç è¯å«é误äºä»¶ |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeStyles">BarcodeStyles</a></h1> |
| | | <p>Barcodeæ«ç æ§ä»¶æ ·å¼</p> |
| | | <pre class="prettyprint linenums"> |
| | | interface plus.barcode.BarcodeStyles { |
| | | attribute String background; |
| | | attribute String frameColor; |
| | |
| | | attribute String position; |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ ·å¼ï¼å¦æ«ç æ¡ãæ«ç æ¡çé¢è²çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>background: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ¡ç è¯å«æ§ä»¶èæ¯é¢è²<br><p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>frameColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br><p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>scanbarColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br><p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>top: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çåç´åç§»é<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto",æ ¹æ®heightå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£åç´å±
ä¸ã |
| | | </p> |
| | | </li> |
| | | <li>left: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çæ°´å¹³åç§»é<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çå®½åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto"ï¼æ ¹æ®widthå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£æ°´å¹³å±
ä¸ã |
| | | é»è®¤å¼ä¸º"0px"ã |
| | | </p> |
| | | </li> |
| | | <li>width: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶ç宽度<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£ç宽度ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>height: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶çé«åº¦<br><p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>position: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å¨Webviewçªå£çå¸å±æ¨¡å¼<br><p> |
| | | å¯åå¼ï¼ |
| | | "static" - éæå¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡åéçªå£å
容æ»å¨ï¼ |
| | | "absolute" - ç»å¯¹å¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡ä¸éçªå£å
容æ»å¨ï¼ |
| | | é»è®¤å¼ä¸º"static"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeOptions">BarcodeOptions</a></h1> |
| | | <p>æ¡ç è¯å«æ§ä»¶æ«æåæ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ ·å¼ï¼å¦æ«ç æ¡ãæ«ç æ¡çé¢è²çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>background: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ¡ç è¯å«æ§ä»¶èæ¯é¢è²<br> |
| | | <p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>frameColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br> |
| | | <p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>scanbarColor: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æ¡é¢è²<br> |
| | | <p> |
| | | é¢è²å¼æ¯æ(åèCSSé¢è²è§è)ï¼é¢è²åç§°(åèCSS Color Names)/åå
è¿å¶å¼/rgbå¼/rgbaå¼ï¼é»è®¤å¼ä¸ºçº¢è²ã |
| | | </p> |
| | | </li> |
| | | <li>top: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çåç´åç§»é<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto",æ ¹æ®heightå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£åç´å±
ä¸ã |
| | | </p> |
| | | </li> |
| | | <li>left: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å·¦ä¸è§çæ°´å¹³åç§»é<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çå®½åº¦ï¼ |
| | | èªå¨è®¡ç®ï¼å¦"auto"ï¼æ ¹æ®widthå¼èªå¨è®¡ç®ï¼ç¸å¯¹äºç¶Webviewçªå£æ°´å¹³å±
ä¸ã |
| | | é»è®¤å¼ä¸º"0px"ã |
| | | </p> |
| | | </li> |
| | | <li>width: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶ç宽度<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£ç宽度ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>height: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶çé«åº¦<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | åç´ å¼ï¼å¦"100px"ï¼ |
| | | ç¾åæ¯ï¼å¦"10%"ï¼ç¸å¯¹äºç¶Webviewçªå£çé«åº¦ã |
| | | é»è®¤å¼ä¸º"100%"ã |
| | | </p> |
| | | </li> |
| | | <li>position: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>Barcodeæ«ç æ§ä»¶å¨Webviewçªå£çå¸å±æ¨¡å¼<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | "static" - éæå¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡åéçªå£å
容æ»å¨ï¼ |
| | | "absolute" - ç»å¯¹å¸å±æ¨¡å¼ï¼å¦æé¡µé¢å卿»å¨æ¡ä¸éçªå£å
容æ»å¨ï¼ |
| | | é»è®¤å¼ä¸º"static"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeOptions">BarcodeOptions</a></h1> |
| | | <p>æ¡ç è¯å«æ§ä»¶æ«æåæ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | interface plus.barcode.BarcodeOptions { |
| | | attribute Boolean conserve; |
| | | attribute String filename; |
| | |
| | | attribute String sound; |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ«ç è¯å«åæ°ï¼å¦æ¯å¦ä¿åæ«ç åæ¶çæªå¾çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>conserve: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ¯å¦ä¿åæ«ç æåæ¶çæªå¾<br><p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶å°å¾çä¿åï¼å¹¶éè¿onmarkedåè°å½æ°çfileåæ°è¿åä¿åæä»¶çè·¯å¾ã |
| | | é»è®¤å¼ä¸ºfalseï¼ä¸ä¿åæªå¾ã |
| | | </p> |
| | | </li> |
| | | <li>filename: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>ä¿åæ«ç æåæ¶å¾çä¿åè·¯å¾<br><p> |
| | | å¯éè¿æ¤åæ°è®¾ç½®ä¿åæªå¾çè·¯å¾ååç§°ï¼å¦æè®¾ç½®å¾çæä»¶åç§°åå¿
é¡»æå®æä»¶çåç¼åï¼å¿
é¡»æ¯.pngï¼ï¼å¦åè®¤ä¸ºæ¯æå®ç®å½ï¼æä»¶åç§°åèªå¨çæã |
| | | </p> |
| | | </li> |
| | | <li>vibrate: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶æ¯å¦éè¦é卿é<br><p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶éå¨è®¾å¤ï¼falseåä¸éå¨ã |
| | | é»è®¤å¼ä¸ºtrueã |
| | | </p> |
| | | </li> |
| | | <li>sound: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶ææ¾çæç¤ºé³<br><p> |
| | | å¯åå¼ï¼ |
| | | "none" - ä¸ææ¾æç¤ºé³ï¼ |
| | | "default" - ææ¾é»è®¤æç¤ºé³ï¼5+弿å
ç½®ï¼ã |
| | | é»è®¤å¼ä¸º"default"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a></h1> |
| | | <p>æ«ç è¯å«æååè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | 设置Barcodeæ«ç æ§ä»¶çæ«ç è¯å«åæ°ï¼å¦æ¯å¦ä¿åæ«ç åæ¶çæªå¾çã |
| | | </p> |
| | | <h2>屿§ï¼</h2> |
| | | <ul> |
| | | <li>conserve: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ¯å¦ä¿åæ«ç æåæ¶çæªå¾<br> |
| | | <p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶å°å¾çä¿åï¼å¹¶éè¿onmarkedåè°å½æ°çfileåæ°è¿åä¿åæä»¶çè·¯å¾ã |
| | | é»è®¤å¼ä¸ºfalseï¼ä¸ä¿åæªå¾ã |
| | | </p> |
| | | </li> |
| | | <li>filename: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>ä¿åæ«ç æåæ¶å¾çä¿åè·¯å¾<br> |
| | | <p> |
| | | å¯éè¿æ¤åæ°è®¾ç½®ä¿åæªå¾çè·¯å¾ååç§°ï¼å¦æè®¾ç½®å¾çæä»¶åç§°åå¿
é¡»æå®æä»¶çåç¼åï¼å¿
é¡»æ¯.pngï¼ï¼å¦åè®¤ä¸ºæ¯æå®ç®å½ï¼æä»¶åç§°åèªå¨çæã |
| | | </p> |
| | | </li> |
| | | <li>vibrate: <em>(<font class="type">Boolean</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶æ¯å¦éè¦é卿é<br> |
| | | <p> |
| | | å¦æè®¾ç½®ä¸ºtrueå卿«ç æåæ¶éå¨è®¾å¤ï¼falseåä¸éå¨ã |
| | | é»è®¤å¼ä¸ºtrueã |
| | | </p> |
| | | </li> |
| | | <li>sound: <em>(<font class="type">String</font> |
| | | ç±»å |
| | | )</em>æ«ç æåæ¶ææ¾çæç¤ºé³<br> |
| | | <p> |
| | | å¯åå¼ï¼ |
| | | "none" - ä¸ææ¾æç¤ºé³ï¼ |
| | | "default" - ææ¾é»è®¤æç¤ºé³ï¼5+弿å
ç½®ï¼ã |
| | | é»è®¤å¼ä¸º"default"ã |
| | | </p> |
| | | </li> |
| | | </ul> |
| | | <h1><a name="plus.barcode.BarcodeSuccessCallback">BarcodeSuccessCallback</a></h1> |
| | | <p>æ«ç è¯å«æååè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | void BarcodeSuccessCallback(type, code, file){ |
| | | // Barcode success code |
| | | } |
| | | </pre> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å½Barcodeæ§ä»¶æ«ç æåæ¶çåè°å½æ°ï¼è¿åè¯å«æåçæ«ç æ°æ®ã |
| | | </p> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul> |
| | | <li>type: |
| | | <em>( |
| | | <font class="type">Number</font> |
| | | ) |
| | | å¿
é </em>è¯å«å°çæ¡ç ç±»å<br> |
| | | Numberç±»åçå¼ï¼ä¸Barcode对象å®ä¹çæ¡ç ç±»å常éä¸è´ã |
| | | </li> |
| | | <li>code: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¿
é </em>è¯å«å°çæ¡ç æ°æ®<br> |
| | | æ«ç è¯å«åºçæ°æ®å
容ï¼å符串类åï¼éç¨UTF8ç¼ç æ ¼å¼ã |
| | | </li> |
| | | <li>file: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¯é </em>æ«ç æåçæªå¾æä»¶è·¯å¾<br> |
| | | æ«ç è¯å«å°çæªå¾ï¼pngæ ¼å¼æä»¶ï¼å¦æè®¾ç½®ä¸ºä¸ä¿åæªå¾ï¼åè¿åundefinedã |
| | | </li> |
| | | </ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | <h2>说æï¼</h2> |
| | | <p class="des"> |
| | | å½Barcodeæ§ä»¶æ«ç æåæ¶çåè°å½æ°ï¼è¿åè¯å«æåçæ«ç æ°æ®ã |
| | | </p> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul> |
| | | <li>type: |
| | | <em>( |
| | | <font class="type">Number</font> |
| | | ) |
| | | å¿
é |
| | | </em>è¯å«å°çæ¡ç ç±»å<br> |
| | | Numberç±»åçå¼ï¼ä¸Barcode对象å®ä¹çæ¡ç ç±»å常éä¸è´ã |
| | | </li> |
| | | <li>code: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¿
é |
| | | </em>è¯å«å°çæ¡ç æ°æ®<br> |
| | | æ«ç è¯å«åºçæ°æ®å
容ï¼å符串类åï¼éç¨UTF8ç¼ç æ ¼å¼ã |
| | | </li> |
| | | <li>file: |
| | | <em>( |
| | | <font class="type">String</font> |
| | | ) |
| | | å¯é |
| | | </em>æ«ç æåçæªå¾æä»¶è·¯å¾<br> |
| | | æ«ç è¯å«å°çæªå¾ï¼pngæ ¼å¼æä»¶ï¼å¦æè®¾ç½®ä¸ºä¸ä¿åæªå¾ï¼åè¿åundefinedã |
| | | </li> |
| | | </ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | : æ <h1><a name="plus.barcode.BarcodeErrorCallback">BarcodeErrorCallback</a></h1> |
| | | <p>æ«ç è¯å«é误åè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | <p>æ«ç è¯å«é误åè°å½æ°</p> |
| | | <pre class="prettyprint linenums"> |
| | | void BarcodeErrorCallback(error){ |
| | | // Error |
| | | var code = error.code; // é误ç¼ç |
| | | var message = error.message; // é误æè¿°ä¿¡æ¯ |
| | | } |
| | | </pre> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul><li>error: |
| | | <em>( |
| | | <font class="type">DOMException</font> |
| | | ) |
| | | å¿
é </em>æ«ç è¯å«çé误信æ¯<br> |
| | | å¯éè¿error.codeï¼Numberç±»åï¼è·åé误ç¼ç ï¼ |
| | | å¯éè¿error.messageï¼Stringç±»åï¼è·åé误æè¿°ä¿¡æ¯ã |
| | | </li></ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | <h2>åæ°ï¼</h2> |
| | | <ul> |
| | | <li>error: |
| | | <em>( |
| | | <font class="type">DOMException</font> |
| | | ) |
| | | å¿
é |
| | | </em>æ«ç è¯å«çé误信æ¯<br> |
| | | å¯éè¿error.codeï¼Numberç±»åï¼è·åé误ç¼ç ï¼ |
| | | å¯éè¿error.messageï¼Stringç±»åï¼è·åé误æè¿°ä¿¡æ¯ã |
| | | </li> |
| | | </ul> |
| | | <h2>è¿åå¼ï¼</h2> |
| | | <font class="type">void</font> |
| | | : æ <br><br> |
| | | </div></body> |
| | | </div> |
| | | </body> |
| | | </html> |
| | |
| | | (function(w){ |
| | | // ç©ºå½æ° |
| | | function shield(){ |
| | | return false; |
| | | } |
| | | document.addEventListener('touchstart', shield, false);//åæ¶æµè§å¨çææäºä»¶ï¼ä½¿å¾activeçæ ·å¼å¨ææºä¸æ£å¸¸çæ |
| | | document.oncontextmenu=shield;//å±è½éæ©å½æ° |
| | | // H5 plusäºä»¶å¤ç |
| | | var ws=null,as='pop-in'; |
| | | function plusReady(){ |
| | | ws=plus.webview.currentWebview(); |
| | | plus.key.addEventListener('backbutton', function(){ |
| | | back(); |
| | | },false); |
| | | } |
| | | if(w.plus){ |
| | | plusReady(); |
| | | }else{ |
| | | document.addEventListener('plusready', plusReady, false); |
| | | } |
| | | // DOMContentLoadedäºä»¶å¤ç |
| | | document.addEventListener('DOMContentLoaded', function(){ |
| | | gInit(); |
| | | document.body.onselectstart=shield; |
| | | },false); |
| | | // è¿å |
| | | w.back=function(hide){ |
| | | if(w.plus){ |
| | | ws||(ws=plus.webview.currentWebview()); |
| | | (hide||ws.preate)?ws.hide('auto'):ws.close('auto'); |
| | | }else if(history.length>1){ |
| | | history.back(); |
| | | }else{ |
| | | w.close(); |
| | | (function(w) { |
| | | // ç©ºå½æ° |
| | | function shield() { |
| | | return false; |
| | | } |
| | | }; |
| | | // å¤çç¹å»äºä»¶ |
| | | var openw=null; |
| | | /** |
| | | * æå¼æ°çªå£ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {String} t : 页颿 é¢åç§° |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.clicked=function(id, t, ws){ |
| | | if(openw){//é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | } |
| | | if(w.plus){ |
| | | ws=ws||{}; |
| | | ws.scrollIndicator||(ws.scrollIndicator='none'); |
| | | ws.scalable||(ws.scalable=false); |
| | | ws.backButtonAutoControl||(ws.backButtonAutoControl='close'); |
| | | ws.titleNView=ws.titleNView||{autoBackButton:true}; |
| | | ws.titleNView.backgroundColor = '#D74B28'; |
| | | ws.titleNView.titleColor = '#CCCCCC'; |
| | | ws.doc&&(ws.titleNView.buttons=ws.titleNView.buttons||[],ws.titleNView.buttons.push({fontSrc:'_www/helloh5.ttf',text:'\ue301',fontSize:'20px',onclick:'javascript:openDoc()'})); |
| | | t&&(ws.titleNView.titleText=t); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('loaded', function(){ |
| | | openw.show(as); |
| | | document.addEventListener('touchstart', shield, false); //åæ¶æµè§å¨çææäºä»¶ï¼ä½¿å¾activeçæ ·å¼å¨ææºä¸æ£å¸¸çæ |
| | | document.oncontextmenu = shield; //å±è½éæ©å½æ° |
| | | // H5 plusäºä»¶å¤ç |
| | | var ws = null, |
| | | as = 'pop-in'; |
| | | |
| | | function plusReady() { |
| | | ws = plus.webview.currentWebview(); |
| | | plus.key.addEventListener('backbutton', function() { |
| | | back(); |
| | | }, false); |
| | | openw.addEventListener('close', function(){ |
| | | openw=null; |
| | | }, false); |
| | | return openw; |
| | | }else{ |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * å建æ°çªå£ï¼æ åå§æ 颿 ï¼ï¼ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.createWithoutTitle=function(id, ws){ |
| | | if(openw){//é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | if (w.plus) { |
| | | plusReady(); |
| | | } else { |
| | | document.addEventListener('plusready', plusReady, false); |
| | | } |
| | | if(w.plus){ |
| | | ws=ws||{}; |
| | | ws.scrollIndicator||(ws.scrollIndicator='none'); |
| | | ws.scalable||(ws.scalable=false); |
| | | ws.backButtonAutoControl||(ws.backButtonAutoControl='close'); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('close', function(){ |
| | | openw=null; |
| | | }, false); |
| | | return openw; |
| | | }else{ |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * æå¼ææ¡£é¡µé¢ |
| | | * @param {URIString} c : è¦æå¼é¡µé¢url |
| | | */ |
| | | w.openDoc=function(c){ |
| | | plus.webview.create(c, 'document', { |
| | | titleNView:{ |
| | | autoBackButton:true, |
| | | backgroundColor:'#D74B28', |
| | | titleColor:'#CCCCCC' |
| | | }, |
| | | backButtonAutoControl:'close', |
| | | scalable:false |
| | | }).show('pop-in'); |
| | | }; |
| | | /** |
| | | * å
¼å®¹æç¤º |
| | | */ |
| | | w.compatibleConfirm=function(){ |
| | | plus.nativeUI.confirm('æ¬OSåçå±é¢ä¸æä¾è¯¥æ§ä»¶ï¼é使ç¨muiæ¡æ¶å®ç°ç±»ä¼¼ææã请ç¹å»âç¡®å®âä¸è½½Hello mui示ä¾',function(e){ |
| | | if(0==e.index){ |
| | | plus.runtime.openURL("http://www.dcloud.io/hellomui/"); |
| | | // DOMContentLoadedäºä»¶å¤ç |
| | | document.addEventListener('DOMContentLoaded', function() { |
| | | gInit(); |
| | | document.body.onselectstart = shield; |
| | | }, false); |
| | | // è¿å |
| | | w.back = function(hide) { |
| | | if (w.plus) { |
| | | ws || (ws = plus.webview.currentWebview()); |
| | | (hide || ws.preate) ? ws.hide('auto'): ws.close('auto'); |
| | | } else if (history.length > 1) { |
| | | history.back(); |
| | | } else { |
| | | w.close(); |
| | | } |
| | | },"",["ç¡®å®","åæ¶"]); |
| | | } |
| | | // éç¨å
ç´ å¯¹è±¡ |
| | | var _dout_=null; |
| | | w.gInit=function(){ |
| | | _dout_=document.getElementById("output"); |
| | | }; |
| | | // æ¸
空è¾åºå
容 |
| | | w.outClean=function(){ |
| | | _dout_.innerText=""; |
| | | _dout_.scrollTop=0;//å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºå
容 |
| | | w.outSet=function(s){ |
| | | console.log(s); |
| | | _dout_.innerText=s+"\n"; |
| | | (0==_dout_.scrollTop)&&(_dout_.scrollTop=1);//å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºè¡å
容 |
| | | w.outLine=function(s){ |
| | | console.log(s); |
| | | _dout_.innerText+=s+"\n"; |
| | | (0==_dout_.scrollTop)&&(_dout_.scrollTop=1);//å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // æ ¼å¼åæ¶é¿åç¬¦ä¸²ï¼æ ¼å¼ä¸º"HH:MM:SS" |
| | | w.timeToStr=function(ts){ |
| | | if(isNaN(ts)){ |
| | | return "--:--:--"; |
| | | }; |
| | | // å¤çç¹å»äºä»¶ |
| | | var openw = null; |
| | | /** |
| | | * æå¼æ°çªå£ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {String} t : 页颿 é¢åç§° |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.clicked = function(id, t, ws) { |
| | | if (openw) { //é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | } |
| | | if (w.plus) { |
| | | ws = ws || {}; |
| | | ws.scrollIndicator || (ws.scrollIndicator = 'none'); |
| | | ws.scalable || (ws.scalable = false); |
| | | ws.backButtonAutoControl || (ws.backButtonAutoControl = 'close'); |
| | | ws.titleNView = ws.titleNView || { |
| | | autoBackButton: true |
| | | }; |
| | | ws.titleNView.backgroundColor = '#D74B28'; |
| | | ws.titleNView.titleColor = '#CCCCCC'; |
| | | ws.doc && (ws.titleNView.buttons = ws.titleNView.buttons || [], ws.titleNView.buttons.push({ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue301', |
| | | fontSize: '20px', |
| | | onclick: 'javascript:openDoc()' |
| | | })); |
| | | t && (ws.titleNView.titleText = t); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('loaded', function() { |
| | | openw.show(as); |
| | | }, false); |
| | | openw.addEventListener('close', function() { |
| | | openw = null; |
| | | }, false); |
| | | return openw; |
| | | } else { |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * å建æ°çªå£ï¼æ åå§æ 颿 ï¼ï¼ |
| | | * @param {URIString} id : è¦æå¼é¡µé¢url |
| | | * @param {JSON} ws : Webviewçªå£å±æ§ |
| | | */ |
| | | w.createWithoutTitle = function(id, ws) { |
| | | if (openw) { //é¿å
夿¬¡æå¼åä¸ä¸ªé¡µé¢ |
| | | return null; |
| | | } |
| | | if (w.plus) { |
| | | ws = ws || {}; |
| | | ws.scrollIndicator || (ws.scrollIndicator = 'none'); |
| | | ws.scalable || (ws.scalable = false); |
| | | ws.backButtonAutoControl || (ws.backButtonAutoControl = 'close'); |
| | | openw = plus.webview.create(id, id, ws); |
| | | openw.addEventListener('close', function() { |
| | | openw = null; |
| | | }, false); |
| | | return openw; |
| | | } else { |
| | | w.open(id); |
| | | } |
| | | return null; |
| | | }; |
| | | /** |
| | | * æå¼ææ¡£é¡µé¢ |
| | | * @param {URIString} c : è¦æå¼é¡µé¢url |
| | | */ |
| | | w.openDoc = function(c) { |
| | | plus.webview.create(c, 'document', { |
| | | titleNView: { |
| | | autoBackButton: true, |
| | | backgroundColor: '#D74B28', |
| | | titleColor: '#CCCCCC' |
| | | }, |
| | | backButtonAutoControl: 'close', |
| | | scalable: false |
| | | }).show('pop-in'); |
| | | }; |
| | | /** |
| | | * å
¼å®¹æç¤º |
| | | */ |
| | | w.compatibleConfirm = function() { |
| | | plus.nativeUI.confirm('æ¬OSåçå±é¢ä¸æä¾è¯¥æ§ä»¶ï¼é使ç¨muiæ¡æ¶å®ç°ç±»ä¼¼ææã请ç¹å»âç¡®å®âä¸è½½Hello mui示ä¾', function(e) { |
| | | if (0 == e.index) { |
| | | plus.runtime.openURL("http://www.dcloud.io/hellomui/"); |
| | | } |
| | | }, "", ["ç¡®å®", "åæ¶"]); |
| | | } |
| | | var h=parseInt(ts/3600); |
| | | var m=parseInt((ts%3600)/60); |
| | | var s=parseInt(ts%60); |
| | | return (ultZeroize(h)+":"+ultZeroize(m)+":"+ultZeroize(s)); |
| | | }; |
| | | // æ ¼å¼åæ¥ææ¶é´åç¬¦ä¸²ï¼æ ¼å¼ä¸º"YYYY-MM-DD HH:MM:SS" |
| | | w.dateToStr=function(d){ |
| | | return (d.getFullYear()+"-"+ultZeroize(d.getMonth()+1)+"-"+ultZeroize(d.getDate())+" "+ultZeroize(d.getHours())+":"+ultZeroize(d.getMinutes())+":"+ultZeroize(d.getSeconds())); |
| | | }; |
| | | /** |
| | | * zeroize value with length(default is 2). |
| | | * @param {Object} v |
| | | * @param {Number} l |
| | | * @return {String} |
| | | */ |
| | | w.ultZeroize=function(v,l){ |
| | | var z=""; |
| | | l=l||2; |
| | | v=String(v); |
| | | for(var i=0;i<l-v.length;i++){ |
| | | z+="0"; |
| | | } |
| | | return z+v; |
| | | }; |
| | | // éç¨å
ç´ å¯¹è±¡ |
| | | var _dout_ = null; |
| | | w.gInit = function() { |
| | | _dout_ = document.getElementById("output"); |
| | | }; |
| | | // æ¸
空è¾åºå
容 |
| | | w.outClean = function() { |
| | | _dout_.innerText = ""; |
| | | _dout_.scrollTop = 0; //å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºå
容 |
| | | w.outSet = function(s) { |
| | | console.log(s); |
| | | _dout_.innerText = s + "\n"; |
| | | (0 == _dout_.scrollTop) && (_dout_.scrollTop = 1); //å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // è¾åºè¡å
容 |
| | | w.outLine = function(s) { |
| | | console.log(s); |
| | | _dout_.innerText += s + "\n"; |
| | | (0 == _dout_.scrollTop) && (_dout_.scrollTop = 1); //å¨iOS8åå¨ä¸æ»å¨çç°è±¡ |
| | | }; |
| | | // æ ¼å¼åæ¶é¿åç¬¦ä¸²ï¼æ ¼å¼ä¸º"HH:MM:SS" |
| | | w.timeToStr = function(ts) { |
| | | if (isNaN(ts)) { |
| | | return "--:--:--"; |
| | | } |
| | | var h = parseInt(ts / 3600); |
| | | var m = parseInt((ts % 3600) / 60); |
| | | var s = parseInt(ts % 60); |
| | | return (ultZeroize(h) + ":" + ultZeroize(m) + ":" + ultZeroize(s)); |
| | | }; |
| | | // æ ¼å¼åæ¥ææ¶é´åç¬¦ä¸²ï¼æ ¼å¼ä¸º"YYYY-MM-DD HH:MM:SS" |
| | | w.dateToStr = function(d) { |
| | | return (d.getFullYear() + "-" + ultZeroize(d.getMonth() + 1) + "-" + ultZeroize(d.getDate()) + " " + |
| | | ultZeroize(d.getHours()) + ":" + ultZeroize(d.getMinutes()) + ":" + ultZeroize(d.getSeconds())); |
| | | }; |
| | | /** |
| | | * zeroize value with length(default is 2). |
| | | * @param {Object} v |
| | | * @param {Number} l |
| | | * @return {String} |
| | | */ |
| | | w.ultZeroize = function(v, l) { |
| | | var z = ""; |
| | | l = l || 2; |
| | | v = String(v); |
| | | for (var i = 0; i < l - v.length; i++) { |
| | | z += "0"; |
| | | } |
| | | return z + v; |
| | | }; |
| | | })(window); |
| | | |
| | | // fast click |
| | | ;(function () { |
| | | ; |
| | | (function() { |
| | | 'use strict'; |
| | | |
| | | /** |
| | |
| | | |
| | | // Some old versions of Android don't have Function.prototype.bind |
| | | function bind(method, context) { |
| | | return function() { return method.apply(context, arguments); }; |
| | | return function() { |
| | | return method.apply(context, arguments); |
| | | }; |
| | | } |
| | | |
| | | |
| | |
| | | } |
| | | |
| | | /** |
| | | * Windows Phone 8.1 fakes user agent string to look like Android and iPhone. |
| | | * |
| | | * @type boolean |
| | | */ |
| | | * Windows Phone 8.1 fakes user agent string to look like Android and iPhone. |
| | | * |
| | | * @type boolean |
| | | */ |
| | | var deviceIsWindowsPhone = navigator.userAgent.indexOf("Windows Phone") >= 0; |
| | | |
| | | /** |
| | |
| | | FastClick.prototype.needsClick = function(target) { |
| | | switch (target.nodeName.toLowerCase()) { |
| | | |
| | | // Don't send a synthetic click to disabled inputs (issue #62) |
| | | case 'button': |
| | | case 'select': |
| | | case 'textarea': |
| | | if (target.disabled) { |
| | | // Don't send a synthetic click to disabled inputs (issue #62) |
| | | case 'button': |
| | | case 'select': |
| | | case 'textarea': |
| | | if (target.disabled) { |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'input': |
| | | |
| | | // File inputs need real clicks on iOS 6 due to a browser bug (issue #68) |
| | | if ((deviceIsIOS && target.type === 'file') || target.disabled) { |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'label': |
| | | case 'iframe': // iOS8 homescreen apps can prevent events bubbling into frames |
| | | case 'video': |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'input': |
| | | |
| | | // File inputs need real clicks on iOS 6 due to a browser bug (issue #68) |
| | | if ((deviceIsIOS && target.type === 'file') || target.disabled) { |
| | | return true; |
| | | } |
| | | |
| | | break; |
| | | case 'label': |
| | | case 'iframe': // iOS8 homescreen apps can prevent events bubbling into frames |
| | | case 'video': |
| | | return true; |
| | | } |
| | | |
| | | return (/\bneedsclick\b/).test(target.className); |
| | |
| | | */ |
| | | FastClick.prototype.needsFocus = function(target) { |
| | | switch (target.nodeName.toLowerCase()) { |
| | | case 'textarea': |
| | | return true; |
| | | case 'select': |
| | | return !deviceIsAndroid; |
| | | case 'input': |
| | | switch (target.type) { |
| | | case 'button': |
| | | case 'checkbox': |
| | | case 'file': |
| | | case 'image': |
| | | case 'radio': |
| | | case 'submit': |
| | | return false; |
| | | } |
| | | case 'textarea': |
| | | return true; |
| | | case 'select': |
| | | return !deviceIsAndroid; |
| | | case 'input': |
| | | switch (target.type) { |
| | | case 'button': |
| | | case 'checkbox': |
| | | case 'file': |
| | | case 'image': |
| | | case 'radio': |
| | | case 'submit': |
| | | return false; |
| | | } |
| | | |
| | | // No point in attempting to focus disabled inputs |
| | | return !target.disabled && !target.readOnly; |
| | | default: |
| | | return (/\bneedsfocus\b/).test(target.className); |
| | | // No point in attempting to focus disabled inputs |
| | | return !target.disabled && !target.readOnly; |
| | | default: |
| | | return (/\bneedsfocus\b/).test(target.className); |
| | | } |
| | | }; |
| | | |
| | |
| | | |
| | | // Synthesise a click event, with an extra attribute so it can be tracked |
| | | clickEvent = document.createEvent('MouseEvents'); |
| | | clickEvent.initMouseEvent(this.determineEventType(targetElement), true, true, window, 1, touch.screenX, touch.screenY, touch.clientX, touch.clientY, false, false, false, false, 0, null); |
| | | clickEvent.initMouseEvent(this.determineEventType(targetElement), true, true, window, 1, touch.screenX, |
| | | touch.screenY, touch.clientX, touch.clientY, false, false, false, false, 0, null); |
| | | clickEvent.forwardedTouchEvent = true; |
| | | targetElement.dispatchEvent(clickEvent); |
| | | }; |
| | |
| | | var length; |
| | | |
| | | // Issue #160: on iOS 7, some input elements (e.g. date datetime month) throw a vague TypeError on setSelectionRange. These elements don't have an integer value for the selectionStart and selectionEnd properties, but unfortunately that can't be used for detection because accessing the properties also throws a TypeError. Just check the type instead. Filed as Apple bug #15122724. |
| | | if (deviceIsIOS && targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && targetElement.type !== 'time' && targetElement.type !== 'month') { |
| | | if (deviceIsIOS && targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && |
| | | targetElement.type !== 'time' && targetElement.type !== 'month') { |
| | | length = targetElement.value.length; |
| | | targetElement.setSelectionRange(length, length); |
| | | } else { |
| | |
| | | * @returns {boolean} |
| | | */ |
| | | FastClick.prototype.touchHasMoved = function(event) { |
| | | var touch = event.changedTouches[0], boundary = this.touchBoundary; |
| | | var touch = event.changedTouches[0], |
| | | boundary = this.touchBoundary; |
| | | |
| | | if (Math.abs(touch.pageX - this.touchStartX) > boundary || Math.abs(touch.pageY - this.touchStartY) > boundary) { |
| | | if (Math.abs(touch.pageX - this.touchStartX) > boundary || Math.abs(touch.pageY - this.touchStartY) > |
| | | boundary) { |
| | | return true; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | // If the touch has moved, cancel the click tracking |
| | | if (this.targetElement !== this.getTargetElementFromEventTarget(event.target) || this.touchHasMoved(event)) { |
| | | if (this.targetElement !== this.getTargetElementFromEventTarget(event.target) || this.touchHasMoved( |
| | | event)) { |
| | | this.trackingClick = false; |
| | | this.targetElement = null; |
| | | } |
| | |
| | | |
| | | // If no for attribute exists, attempt to retrieve the first labellable descendant element |
| | | // the list of which is defined here: http://www.w3.org/TR/html5/forms.html#category-label |
| | | return labelElement.querySelector('button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea'); |
| | | return labelElement.querySelector( |
| | | 'button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea'); |
| | | }; |
| | | |
| | | |
| | |
| | | * @returns {boolean} |
| | | */ |
| | | FastClick.prototype.onTouchEnd = function(event) { |
| | | var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this.targetElement; |
| | | var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this |
| | | .targetElement; |
| | | |
| | | if (!this.trackingClick) { |
| | | return true; |
| | |
| | | touch = event.changedTouches[0]; |
| | | |
| | | // In certain cases arguments of elementFromPoint can be negative, so prevent setting targetElement to null |
| | | targetElement = document.elementFromPoint(touch.pageX - window.pageXOffset, touch.pageY - window.pageYOffset) || targetElement; |
| | | targetElement = document.elementFromPoint(touch.pageX - window.pageXOffset, touch.pageY - window |
| | | .pageYOffset) || targetElement; |
| | | targetElement.fastClickScrollParent = this.targetElement.fastClickScrollParent; |
| | | } |
| | | |
| | |
| | | |
| | | // Case 1: If the touch started a while ago (best guess is 100ms based on tests for issue #36) then focus will be triggered anyway. Return early and unset the target element reference so that the subsequent click will be allowed through. |
| | | // Case 2: Without this exception for input elements tapped when the document is contained in an iframe, then any inputted text won't be visible even though the value attribute is updated as the user types (issue #37). |
| | | if ((event.timeStamp - trackingClickStart) > 100 || (deviceIsIOS && window.top !== window && targetTagName === 'input')) { |
| | | if ((event.timeStamp - trackingClickStart) > 100 || (deviceIsIOS && window.top !== window && |
| | | targetTagName === 'input')) { |
| | | this.targetElement = null; |
| | | return false; |
| | | } |
| | |
| | | } |
| | | |
| | | // Chrome version - zero for other browsers |
| | | chromeVersion = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; |
| | | chromeVersion = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1]; |
| | | |
| | | if (chromeVersion) { |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | // Chrome desktop doesn't need FastClick (issue #15) |
| | | // Chrome desktop doesn't need FastClick (issue #15) |
| | | } else { |
| | | return true; |
| | | } |
| | |
| | | } |
| | | |
| | | // Firefox version - zero for other browsers |
| | | firefoxVersion = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; |
| | | firefoxVersion = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1]; |
| | | |
| | | if (firefoxVersion >= 27) { |
| | | // Firefox 27+ does not have tap delay if the content is not zoomable - https://bugzilla.mozilla.org/show_bug.cgi?id=922896 |
| | | |
| | | metaViewport = document.querySelector('meta[name=viewport]'); |
| | | if (metaViewport && (metaViewport.content.indexOf('user-scalable=no') !== -1 || document.documentElement.scrollWidth <= window.outerWidth)) { |
| | | if (metaViewport && (metaViewport.content.indexOf('user-scalable=no') !== -1 || document |
| | | .documentElement.scrollWidth <= window.outerWidth)) { |
| | | return true; |
| | | } |
| | | } |
| | |
| | | window.FastClick = FastClick; |
| | | } |
| | | |
| | | document.addEventListener('DOMContentLoaded', function() { |
| | | FastClick.attach(document.body); |
| | | }, false); |
| | | document.addEventListener('DOMContentLoaded', function() { |
| | | FastClick.attach(document.body); |
| | | }, false); |
| | | |
| | | }()); |
| | |
| | | // // æ ¼å¼åå°åæ åæ° å°å¯¹è±¡èªå¨æ¼æ¥æå°åæ ä¼ åå½¢å¼ |
| | | |
| | | // export formatParams() { |
| | | // const data = { |
| | | // userid: 33, |
| | | // usercode: '002', |
| | | // username: 'å¼ ä¸', |
| | | // usertype: 'APP' |
| | | // } |
| | | |
| | | |
| | | // return data |
| | | |
| | | // } |
| | | |
| | | // export const value=1 |
| | | (function(w) { |
| | | // æ ¼å¼åå°åæ åæ° å°å¯¹è±¡èªå¨æ¼æ¥æå°åæ ä¼ åå½¢å¼ |
| | | w.formatParams = function() { |
| | | const data = { |
| | | userid: 33, |
| | | usercode: '002', |
| | | username: 'å¼ ä¸', |
| | | usertype: 'APP' |
| | | } |
| | | return data; |
| | | } |
| | | |
| | | |
| | | })(window); |
| | |
| | | <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" /> --> |
| | | <meta name="HandheldFriendly" content="true" /> |
| | | <meta name="MobileOptimized" content="320" /> |
| | | <title>æ°å¯è¿ªå¶é äºå¹³å°</title> |
| | | <!-- å¼å
¥åç´ è½¬æ¢ px->rpx --> |
| | | <!-- <script src="../../js/rpx4html.js"></script> --> |
| | |
| | | <script type="text/javascript" src="../../js/http.js"></script> |
| | | |
| | | |
| | | <!-- 导å
¥èªå®ä¹jsæä»¶ --> |
| | | <!-- <script type="module" src="../../js/global.js"></script> --> |
| | | <!-- 导å
¥èªå®ä¹å
¨å±jsæä»¶ --> |
| | | <script type="text/javascript" src="../../js/global.js"></script> |
| | | |
| | | |
| | | |
| | |
| | | |
| | | }, |
| | | mounted() { |
| | | |
| | | console.log(formatParams(),1) |
| | | }, |
| | | methods: { |
| | | loginClick() { |
| | |
| | | <meta name="HandheldFriendly" content="true" /> |
| | | <meta name="MobileOptimized" content="320" /> |
| | | <title>æ°å¯è¿ªå¶é äºå¹³å°</title> |
| | | <!-- å¼å
¥åç´ è½¬æ¢ px->rpx --> |
| | | <!-- <script src="../../js/rpx4html.js"></script> --> |
| | | |
| | | <!-- å¼å
¥æ ·å¼æä»¶ --> |
| | | <link rel="stylesheet" href="../../css/vant.css" /> |
| | |
| | | } |
| | | |
| | | .body { |
| | | /* width: 96%; */ |
| | | height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | /* margin-left: 2%; */ |
| | | background-color: #fff; |
| | | position: relative; |
| | | /* display: flex; |
| | | justify-content: center; |
| | | align-items: flex-start; */ |
| | | |
| | | position: relative; |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | | background-color: #2651d8; |
| | | /* background-color: #25a4ff; */ |
| | | height: 44px; |
| | | } |
| | | |
| | |
| | | <meta name="HandheldFriendly" content="true" /> |
| | | <meta name="MobileOptimized" content="320" /> |
| | | <title>æ°å¯è¿ªå¶é äºå¹³å°</title> |
| | | <!-- å¼å
¥åç´ è½¬æ¢ px->rpx --> |
| | | <!-- <script src="../../js/rpx4html.js"></script> --> |
| | | |
| | | <!-- å¼å
¥æ ·å¼æä»¶ --> |
| | | <link rel="stylesheet" href="../../css/vant.css" /> |
| | |
| | | <script type="text/javascript" src="../../js/axios.min.js"></script> |
| | | <script type="text/javascript" src="../../js/http.js"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/common.js"></script> |
| | | |
| | | <link rel="stylesheet" href="../css/global.css" type="text/css" charset="utf-8" /> |
| | | <!-- <link rel="stylesheet" href="../../css/global.css" type="text/css" charset="utf-8" /> --> |
| | | |
| | | <script type="text/javascript"> |
| | | var topContent = [ |
| | | // { |
| | | // code: 'SB001', |
| | | // name: '齿轮箱ç»', |
| | | // wksp_code: "CJ002", |
| | | // wksp_name: 'è£
é
车é´', |
| | | // eqpchkmain_code: "djbz002" |
| | | // }, |
| | | // { |
| | | // code: 'SB003', |
| | | // name: '齿轮箱ç»', |
| | | // wksp_code: "CJ002", |
| | | // wksp_name: 'è£
é
车é´', |
| | | // eqpchkmain_code: "djbz002" |
| | | // }, |
| | | ]; |
| | | |
| | | var centerContent = [ |
| | | // { |
| | | // checkdesc: 'æ°åæ£å¸¸10å¸ï¼æé«ä¸è¶
è¿10.5å¸ï¼æä½ä¸ä½äº9.7', |
| | | // code: 'BW003', |
| | | // name: 'é¨ä½3', |
| | | // seq: 2, |
| | | // cycle: 'D', |
| | | // isscan: 'N', |
| | | // isOK: 'OK', |
| | | // inputValue: '', |
| | | // isDisabled: false, |
| | | // }, |
| | | ] |
| | | |
| | | |
| | | let radioValue = '' |
| | | |
| | | let resultValue = '' |
| | | |
| | | |
| | | let bwcode = '' |
| | | |
| | | let number = [] |
| | | |
| | | function scaned(r) { |
| | | |
| | | let flag = false |
| | | topContent.forEach((item, index) => { |
| | | if (item.code === r) { |
| | | flag = true |
| | | } |
| | | }) |
| | | if (flag) { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: 'æ¤æ¡ç å·²æ«æï¼å·²å¨å表ä¸ï¼' |
| | | }); |
| | | } else { |
| | | get('AppDeviceManage/CheckScanDeviceQrCodeData', { |
| | | eqpcode: r |
| | | }).then(res => { |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code !== null) { |
| | | topContent.unshift(res.data[0]) |
| | | topContentClcik(topContent[0].code) |
| | | } |
| | | |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code === null) { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: 'å½åè®¾å¤æªè®¾ç½®ç¹æ£æ åç»å®ç¹æ£é¡¹ç®ï¼' |
| | | }); |
| | | } |
| | | }) |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | function scaned2(r) { |
| | | if (bwcode === r) { |
| | | centerContent.forEach(item => { |
| | | if (item.code === bwcode) { |
| | | item.isDisabled = false |
| | | item.isOK = 'OK' |
| | | |
| | | |
| | | if (centerContent.every(r => r.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } |
| | | if (centerContent.some(r => r.isOK === 'NG')) { |
| | | resultValue = 'NG' |
| | | } |
| | | if (centerContent.some(r => r.isOK === '')) { |
| | | resultValue = '' |
| | | } |
| | | |
| | | |
| | | number.push({ |
| | | id: '1' |
| | | }) |
| | | } |
| | | }) |
| | | } else { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: 'æ«æçäºç»´ç æªä¸æ¤ç¹æ£é¡¹ç®ç¸å¹é
ï¼' |
| | | }); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | function topContentClcik(code) { |
| | | radioValue = code |
| | | get('AppDeviceManage/SelectScanDeviceQrCodeItem', { |
| | | eqpcode: code |
| | | }).then(res => { |
| | | if (res.code === '200') { |
| | | centerContent = res.data |
| | | centerContent = JSON.parse(JSON.stringify(centerContent)) |
| | | centerContent.forEach(item => { |
| | | item.isDisabled = item.isscan === 'Y' |
| | | item.inputValue = '' |
| | | item.isOK = item.isscan !== 'Y' ? 'OK' : '' |
| | | }) |
| | | if (centerContent.every(r => r.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } |
| | | if (centerContent.some(r => r.isOK === 'NG')) { |
| | | resultValue = 'NG' |
| | | } |
| | | if (centerContent.some(r => r.isOK === '')) { |
| | | resultValue = '' |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | </script> |
| | | </head> |
| | | <!-- <body onload="loadNodes()"> --> |
| | | <body> |
| | | <div id="app"> |
| | | |
| | |
| | | |
| | | <van-nav-bar title="æ¥å¸¸ç¹æ£" @click-right="onClickRight" left-arrow @click-left="onClickleft"> |
| | | <template #right> |
| | | <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" |
| | | <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" |
| | | trigger="click" :actions="actions" @select="onSelect"> |
| | | <template #reference> |
| | | <van-icon name="bars" size='20' color='#fff' /> |
| | |
| | | </template> |
| | | </van-nav-bar> |
| | | |
| | | </div> |
| | | |
| | | <div class="head"> |
| | | <div class="head_block"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | æ«æç¹æ£å·¥ä½ |
| | | </div> |
| | | </div> |
| | | |
| | | <div style="margin-right: 10px;"> |
| | | <van-icon name="scan" color='red' size='24' @click='topScanClick()' /> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div class="flex_between" style=""> |
| | | <div id="contentLeft" style="width: 100%;margin-top: 10px;"> |
| | | <div id="topContentID" v-for="item in topContent" :key="item.code" |
| | | style="margin-bottom: 10px;margin-left: 20px;" @click="topContentClcik(item.code)"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <div> |
| | | <div>å·¥ä½ç¼ç ï¼</div> |
| | | <div>å·¥ä½åç§°ï¼</div> |
| | | <div>ç产车é´ï¼</div> |
| | | </div> |
| | | <div> |
| | | <div>{{item.code}}</div> |
| | | <div>{{item.name}}</div> |
| | | <div>{{item.wksp_name}}</div> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | <div id="contentRight"> |
| | | <van-radio-group v-model="radioValue" style="padding-right: 12px;"> |
| | | <van-radio checked-color='red' icon-size="18px" |
| | | style="height: 63px;margin-bottom: 10px;" v-for="item in topContent" |
| | | :key="item.code" :name="item.code"></van-radio> |
| | | </van-radio-group> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="head" |
| | | :style="{marginTop:topContent.length===0?'100px':'0',minHeight:topContent.length===0?'0':'220px'}" |
| | | style="margin-bottom: 130px;padding-bottom: 10px;overflow-y: ;" |
| | | :style="{marginTop:topContent.length===0?'78px':'0'}"> |
| | | <div class="head_block" style="margin-bottom:10px;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£é¡¹ç®å
容 |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div class="center_border flex_column" style="margin: 5px;" v-for="item in centerContent" |
| | | :key="item.code"> |
| | | <div class="flex_between"> |
| | | <div class="center_title">{{item.name}}</div> |
| | | <div style="margin-right: 10px;" v-if="item.isscan==='Y'"> |
| | | <van-icon name="scan" color='red' size='24' @click='centerScanClick(item.code)' /> |
| | | </div> |
| | | </div> |
| | | <div class="flex_between "> |
| | | <div class='flex_between' style="width: 90%;"> |
| | | <van-field class="vanFieldInput" :disabled="item.isDisabled" v-model="item.inputValue" |
| | | placeholder="请è¾å
¥" /> |
| | | </div> |
| | | |
| | | |
| | | <div class="" style="width: 40%;display: flex;justify-content: space-around;"> |
| | | <van-button class="buttonSmall" :disabled='item.isDisabled' size="small" |
| | | :plain="item.isOK!=='OK'" @click="bwClick(item,'OK')" type="primary">æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="item.isOK!=='NG'" |
| | | @click="bwClick(item,'NG')" :disabled='item.isDisabled' type="danger">å¼å¸¸ |
| | | </van-button> |
| | | </div> |
| | | </div> |
| | | <div style="font-weight: lighter;font-size: 14px;padding-right: 5px"> |
| | | {{item.checkdesc}} |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | |
| | | <div style=""> |
| | | <div class="footer"> |
| | | <div class="head_block" style="margin-bottom: 20rpx;align-items: center;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£ç»æ |
| | | </div> |
| | | </div> |
| | | <div class="flex_center" style="width: 30%;display: flex;justify-content: space-around;"> |
| | | |
| | | <van-button class="buttonSmall" |
| | | :disabled="centerContent.some(item=>item.isDisabled===true)||centerContent.length===0" |
| | | size="small" :plain="resultValue!=='OK'" @click="resultClick('OK')" type="primary"> |
| | | æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="resultValue!=='NG'" |
| | | :disabled="centerContent.some(item=>item.isDisabled===true)||centerContent.length===0" |
| | | @click="resultClick('NG')" type="danger">å¼å¸¸</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div |
| | | style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center"> |
| | | <van-button class="vanButtonInfo" :disabled="resultValue===''" @click="submit" type="info"> |
| | | 确认æäº¤</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | </div> |
| | | |
| | | <van-overlay :show="overlayShow" @click="overlayShow=false" /> |
| | | |
| | |
| | | icon: 'revoke', |
| | | text: 'éåºç»å½' |
| | | }], |
| | | |
| | | topContent2: topContent, |
| | | centerContent2: centerContent, |
| | | number2: number |
| | | } |
| | | }, |
| | | created() { |
| | | watch: { |
| | | 'topContent2.length': { |
| | | handler(newValue, oldValue) { |
| | | if (newValue !== oldValue) { |
| | | // this.topContent2 = topContent |
| | | // this.$forceUpdate() |
| | | if (topContent[0] && topContent[0].code) { |
| | | this.$forceUpdate() |
| | | this.topContentClcik(topContent[0].code) |
| | | } |
| | | |
| | | } |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | |
| | | 'topContent.length': { |
| | | handler(newValue, oldValue) { |
| | | if (newValue !== oldValue) { |
| | | this.$forceUpdate() |
| | | // if (topContent[0]&&topContent[0].code) { |
| | | // this.$forceUpdate() |
| | | // this.topContentClcik(topContent[0].code) |
| | | // } |
| | | } |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | 'number2.length': { |
| | | handler(newValue, oldValue) { |
| | | this.$forceUpdate() |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | 'number.length': { |
| | | handler(newValue, oldValue) { |
| | | this.$forceUpdate() |
| | | }, |
| | | deep: true, |
| | | immediate: true, |
| | | }, |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | created() {}, |
| | | mounted() {}, |
| | | methods: { |
| | | onClickleft(){ |
| | | submit() { |
| | | vant.Toast('xxx1') |
| | | }, |
| | | topContentClcik(code) { |
| | | radioValue = code |
| | | this.$forceUpdate() |
| | | get('AppDeviceManage/SelectScanDeviceQrCodeItem', { |
| | | eqpcode: code |
| | | }).then(res => { |
| | | if (res.code === '200') { |
| | | centerContent = res.data |
| | | centerContent.forEach(item => { |
| | | item.isDisabled = item.isscan === 'Y' |
| | | item.inputValue = '' |
| | | item.isOK = item.isscan !== 'Y' ? 'OK' : '' |
| | | }) |
| | | if (centerContent.every(r => r.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } |
| | | if (centerContent.some(r => r.isOK === 'NG')) { |
| | | resultValue = 'NG' |
| | | } |
| | | if (centerContent.some(r => r.isOK === '')) { |
| | | resultValue = '' |
| | | } |
| | | |
| | | this.$forceUpdate() |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | resultClick(val) { |
| | | resultValue = val |
| | | this.$forceUpdate() |
| | | }, |
| | | |
| | | selected(id) { |
| | | alert(id) |
| | | }, |
| | | |
| | | // æ«æç¹æ£å·¥ä½æ«æ |
| | | topScanClick() { |
| | | createWithoutTitle('../../components/barcode_scan.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | // ç¹æ£é¡¹ç®å
å®¹æ«æ |
| | | centerScanClick(code) { |
| | | bwcode = code |
| | | createWithoutTitle('../../components/barcode_scan2.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | // é¨ä½æ£å¸¸ å¼å¸¸æé®ç¹å» |
| | | bwClick(item, val) { |
| | | item.isOK = val |
| | | if (centerContent.every(item => item.isOK !== '')) { |
| | | if (centerContent.every(item => item.isOK === 'OK')) { |
| | | resultValue = 'OK' |
| | | } else { |
| | | resultValue = 'NG' |
| | | } |
| | | } |
| | | this.$forceUpdate() //强å¶è§å¾æ´æ° |
| | | }, |
| | | onClickleft() { |
| | | history.back() |
| | | }, |
| | | onClickRight() { |
| | |
| | | }) |
| | | </script> |
| | | <style type="text/css"> |
| | | @import url('../../css/global.css'); |
| | | |
| | | body { |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .body { |
| | | /* width: 96%; */ |
| | | height: 600px; |
| | | min-height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | /* margin-left: 2%; */ |
| | | background-color: #fff; |
| | | position: relative; |
| | | /* display: flex; |
| | | justify-content: center; |
| | | align-items: flex-start; */ |
| | | |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | | background-color: #2651d8; |
| | | /* background-color: #25a4ff; */ |
| | | height: 44px; |
| | | } |
| | | |
| | |
| | | color: #fff; |
| | | letter-spacing: 2px; |
| | | } |
| | | .van-nav-bar__arrow{ |
| | | |
| | | .van-nav-bar__arrow { |
| | | color: #fff !important; |
| | | } |
| | | |
| | | .createElementDiv { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | margin-bottom: 10px; |
| | | margin-left: 20px; |
| | | } |
| | | |
| | | .vanFieldInput { |
| | | height: 36px; |
| | | line-height: 36px; |
| | | align-items: center; |
| | | /* width: 200px; */ |
| | | |
| | | padding: 0; |
| | | padding-left: 10px; |
| | | /* border-radius: 5px; */ |
| | | margin: 5px 0; |
| | | /* background-color: #fff; */ |
| | | } |
| | | |
| | | .buttonSmall { |
| | | /* border-radius: 5px; */ |
| | | } |
| | | |
| | | .vanButtonInfo { |
| | | width: 100%; |
| | | letter-spacing: 2px; |
| | | height: 50px; |
| | | font-size: 18px; |
| | | /* margin-left: 0; */ |
| | | |
| | | } |
| | | </style> |
| | | </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>æ°å¯è¿ªå¶é äºå¹³å°</title> |
| | | |
| | | <!-- å¼å
¥æ ·å¼æä»¶ --> |
| | | <link rel="stylesheet" href="../../css/vant.css" /> |
| | | <!-- å¼å
¥ Vue å Vant ç JS æä»¶ --> |
| | | <script src="../../js/vue.min.js"></script> |
| | | <script src="../../js/vant.min.js"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/jquery-1.6.4.min.js"></script> |
| | | <script type="text/javascript" src="../../js/axios.min.js"></script> |
| | | <script type="text/javascript" src="../../js/http.js"></script> |
| | | |
| | | <script type="text/javascript" src="../../js/common.js"></script> |
| | | |
| | | <!-- <link rel="stylesheet" href="../../css/global.css" type="text/css" charset="utf-8" /> --> |
| | | |
| | | <script type="text/javascript"> |
| | | var topContent = [{ |
| | | code: 'SB001', |
| | | name: '12312', |
| | | wksp_code: "CJ002", |
| | | wksp_name: '12321321', |
| | | eqpchkmain_code: "djbz002" |
| | | }, ]; |
| | | |
| | | var centerContent = [{ |
| | | checkdesc: '1234', |
| | | code: 'BW001', |
| | | name: 'é¨ä½22222', |
| | | seq: 1, |
| | | cycle: 'D', |
| | | isscan: 'N', |
| | | inputValue: '', |
| | | isOK: 'OK', |
| | | isDisabled: false, |
| | | }, |
| | | { |
| | | checkdesc: 'æ°åæ£å¸¸10å¸ï¼æé«ä¸è¶
è¿10.5å¸ï¼æä½ä¸ä½äº9.7', |
| | | code: 'BW003', |
| | | name: 'é¨ä½3', |
| | | seq: 2, |
| | | cycle: 'D', |
| | | isscan: 'N', |
| | | isOK: 'OK', |
| | | inputValue: '', |
| | | isDisabled: true, |
| | | }, |
| | | ] |
| | | |
| | | let radioValue = '' |
| | | let resultValue = '' |
| | | |
| | | |
| | | function loadNodes() { |
| | | let li = null |
| | | hl = document.getElementById('contentLeft'); |
| | | |
| | | topContent.forEach((item, index) => { |
| | | li = document.createElement('div'); |
| | | li.code = item.code |
| | | li.id = item.code |
| | | let html = '<div class="createElementDiv">' |
| | | html += '<div style="">' + |
| | | 'å·¥ä½ç¼ç ï¼' + item.code + '</br>' + 'å·¥ä½åç§°ï¼' + item.name + '</br>' + 'ç产车é´ï¼' + item.wksp_name + |
| | | '</div><input type="radio" class="radioClass" style="margin-right:16px;background-color:red !important;color:red !important;" name="radioValue"></input>' |
| | | html += '</div>' |
| | | |
| | | li.setAttribute('onclick', 'createElementDivClick(code)') |
| | | li.innerHTML = html; |
| | | hl.insertBefore(li, hl.childNodes[index]); |
| | | |
| | | }) |
| | | |
| | | |
| | | if (hl.querySelectorAll("div")[1]) { |
| | | hl.querySelectorAll("div")[1].querySelectorAll("input")[0].checked = true |
| | | // createElementDivClick(topContent[0].code) |
| | | } |
| | | |
| | | } |
| | | |
| | | function createElementDivClick(code) { |
| | | |
| | | let node = document.getElementById(code) |
| | | node.querySelectorAll("div.createElementDiv>input")[0].checked = true |
| | | |
| | | get('AppDeviceManage/SelectScanDeviceQrCodeItem', { |
| | | eqpcode: code |
| | | }).then(res => { |
| | | |
| | | vant.Toast(JSON.stringify(res.data)) |
| | | }) |
| | | } |
| | | |
| | | function scaned(r) { |
| | | |
| | | get('AppDeviceManage/CheckScanDeviceQrCodeData', { |
| | | eqpcode: r |
| | | }).then(res => { |
| | | |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code !== null) { |
| | | // alert(JSON.stringify(res.data)) |
| | | // alert(JSON.stringify(res.data)) |
| | | let li = null |
| | | hl = document.getElementById('contentLeft'); |
| | | |
| | | li = document.createElement('div'); |
| | | li.code = res.data[0].code |
| | | li.id = res.data[0].code |
| | | let html = '<div class="createElementDiv">' |
| | | html += '<div style="">' + |
| | | 'å·¥ä½ç¼ç ï¼' + res.data[0].code + '</br>' + 'å·¥ä½åç§°ï¼' + res.data[0].name + '</br>' + 'ç产车é´ï¼' + res |
| | | .data[0] |
| | | .wksp_name + |
| | | '</div><input style="margin-right:16px;background-color:red !important;color:red !important;" type="radio" name="radioValue"></input>' |
| | | html += '</div>' |
| | | |
| | | li.setAttribute('onclick', 'createElementDivClick(code)') |
| | | li.innerHTML = html; |
| | | hl.insertBefore(li, hl.childNodes[0]); |
| | | |
| | | |
| | | if (hl.querySelectorAll("div")[1]) { |
| | | hl.querySelectorAll("div")[1].querySelectorAll("input")[0].checked = true |
| | | createElementDivClick(res.data[0].code) |
| | | } |
| | | topContent.unshift({ |
| | | code: res.data[0].code, |
| | | name: res.data[0].name, |
| | | wksp_name: res[0].data.wksp_name |
| | | }) |
| | | |
| | | } |
| | | |
| | | if (res.code === '200' && res.data[0].eqpchkmain_code === null) { |
| | | vant.Notify({ |
| | | type: 'danger', |
| | | message: res.Message |
| | | }); |
| | | } |
| | | }) |
| | | |
| | | } |
| | | |
| | | |
| | | function scaned2(r) { |
| | | alert(r) |
| | | } |
| | | |
| | | function del() { |
| | | let node = document.getElementById('contentLeft') |
| | | node.removeChild(document.getElementById('SB001')) |
| | | } |
| | | </script> |
| | | </head> |
| | | <body onload="loadNodes()"> |
| | | <!-- <body> --> |
| | | <div id="app"> |
| | | |
| | | <div class="body"> |
| | | |
| | | <van-nav-bar title="æ¥å¸¸ç¹æ£" @click-right="onClickRight" left-arrow @click-left="onClickleft"> |
| | | <template #right> |
| | | <van-popover style="" placement="bottom-end" :offset="[13,8]" v-model="showPopover" |
| | | trigger="click" :actions="actions" @select="onSelect"> |
| | | <template #reference> |
| | | <van-icon name="bars" size='20' color='#fff' /> |
| | | </template> |
| | | </van-popover> |
| | | </template> |
| | | </van-nav-bar> |
| | | |
| | | |
| | | <div class="head"> |
| | | <div class="head_block"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | æ«æç¹æ£å·¥ä½ |
| | | </div> |
| | | </div> |
| | | |
| | | <div style="margin-right: 10px;"> |
| | | <van-icon name="scan" color='red' size='24' @click='topScanClick()' /> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div class="flex_between" style=""> |
| | | <div id="contentLeft" style="width: 100%;"> |
| | | </div> |
| | | <div id="contentRight"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="head" style="margin-bottom: 15px;padding-bottom: 10px;" |
| | | :style="{marginTop:topContent.length===0?'78px':'0'}"> |
| | | <div class="head_block" style="margin-bottom:10px;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£é¡¹ç®å
容 |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div class="center_border flex_column" style="margin: 5px;" v-for="item in centerContent" |
| | | :key="item.code"> |
| | | <div class="flex_between"> |
| | | <div class="center_title">{{item.name}}</div> |
| | | <!-- v-if="item.isscan==='Y'" --> |
| | | <div style="margin-right: 10px;"> |
| | | <van-icon name="scan" color='red' size='24' @click='centerScanClick(item.code)' /> |
| | | </div> |
| | | </div> |
| | | <div class="flex_between "> |
| | | <div class='flex_between'> |
| | | <van-field class="vanFieldInput" style="" border v-model="item.inputValue" |
| | | label="请è¾å
¥" /> |
| | | </div> |
| | | |
| | | |
| | | <div class="" style="width: 40%;display: flex;justify-content: space-around;"> |
| | | <van-button class="buttonSmall" size="small" :plain="item.isOK!=='OK'" |
| | | @click="bwClick(item,'OK')" type="primary">æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="item.isOK!=='NG'" |
| | | @click="bwClick(item,'NG')" type="danger">å¼å¸¸</van-button> |
| | | </div> |
| | | </div> |
| | | <div style="font-weight: lighter;font-size: 14px;padding-right: 5px"> |
| | | {{item.checkdesc}} |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | <!-- |
| | | <div style="position:fixed;bottom: 0;width: 100%;display: flex;justify-content: center;flex-direction: column;align-items: center"> |
| | | <div style="display: flex;float: left;"> |
| | | 111 |
| | | </div> |
| | | <van-button class="vanButtonInfo" type="info">确认æäº¤</van-button> |
| | | </div> --> |
| | | |
| | | |
| | | <div style=""> |
| | | <div class="footer"> |
| | | <div class="head_block" style="margin-bottom: 20rpx;align-items: center;"> |
| | | <div class="head_left"> |
| | | <div class="head_bar"></div> |
| | | <div class="head_title"> |
| | | ç¹æ£ç»æ |
| | | </div> |
| | | </div> |
| | | <div class="flex_center" style="width: 30%;display: flex;justify-content: space-around;"> |
| | | |
| | | <van-button class="buttonSmall" size="small" :plain="resultValue!=='OK'" |
| | | @click="resultClick('OK')" type="primary">æ£å¸¸</van-button> |
| | | <van-button class="buttonSmall" size="small" :plain="resultValue!=='NG'" |
| | | @click="resultClick('NG')" type="danger">å¼å¸¸</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div |
| | | style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center"> |
| | | <van-button class="vanButtonInfo" type="info">确认æäº¤</van-button> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | </div> |
| | | |
| | | <!-- <button @click="del">å é¤èç¹</button> --> |
| | | |
| | | |
| | | <van-overlay :show="overlayShow" @click="overlayShow=false" /> |
| | | |
| | | |
| | | </div> |
| | | </body> |
| | | <script> |
| | | var app = new Vue({ |
| | | el: '#app', |
| | | data: function() { |
| | | return { |
| | | overlayShow: false, |
| | | showPopover: false, |
| | | actions: [{ |
| | | icon: 'description', |
| | | text: 'æä½æå¯¼' |
| | | }, { |
| | | icon: 'award-o', |
| | | text: 'æå追溯' |
| | | }, { |
| | | icon: 'revoke', |
| | | text: 'éåºç»å½' |
| | | }], |
| | | |
| | | |
| | | radioValue: '', |
| | | |
| | | |
| | | |
| | | } |
| | | }, |
| | | watch: { |
| | | |
| | | }, |
| | | created() { |
| | | |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | methods: { |
| | | |
| | | resultClick(val) { |
| | | resultValue = val |
| | | this.$forceUpdate() |
| | | }, |
| | | |
| | | selected(id) { |
| | | alert(id) |
| | | }, |
| | | |
| | | // æ«æç¹æ£å·¥ä½æ«æ |
| | | topScanClick() { |
| | | createWithoutTitle('../../components/barcode_scan.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | // ç¹æ£é¡¹ç®å
å®¹æ«æ |
| | | centerScanClick() { |
| | | createWithoutTitle('../../components/barcode_scan2.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | // é¨ä½æ£å¸¸ å¼å¸¸æé®ç¹å» |
| | | bwClick(item, val) { |
| | | item.isOK = val |
| | | if (centerContent.every(item => item.isOK !== '')) { |
| | | // if (centerContent.every(item => item.isOK === 'OK')) { |
| | | // this.resultValue = 'OK' |
| | | // } else { |
| | | // this.resultValue = 'NG' |
| | | // } |
| | | } |
| | | this.$forceUpdate() //强å¶è§å¾æ´æ° |
| | | }, |
| | | |
| | | groupChange(code) { |
| | | |
| | | }, |
| | | |
| | | |
| | | onClickleft() { |
| | | history.back() |
| | | }, |
| | | onClickRight() { |
| | | this.overlayShow = true |
| | | }, |
| | | onSelect(action) { |
| | | vant.Toast(action.text); |
| | | this.overlayShow = false |
| | | }, |
| | | } |
| | | }) |
| | | </script> |
| | | <style type="text/css"> |
| | | @import url('../../css/global.css'); |
| | | |
| | | body { |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .body { |
| | | min-height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | background-color: #fff; |
| | | position: relative; |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | | background-color: #2651d8; |
| | | height: 44px; |
| | | } |
| | | |
| | | .van-nav-bar__title { |
| | | color: #fff; |
| | | letter-spacing: 2px; |
| | | } |
| | | |
| | | .van-nav-bar__arrow { |
| | | color: #fff !important; |
| | | } |
| | | |
| | | .createElementDiv { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | margin-bottom: 10px; |
| | | margin-left: 20px; |
| | | } |
| | | |
| | | .vanFieldInput { |
| | | height: 36px; |
| | | line-height: 36px; |
| | | align-items: center; |
| | | width: 90%; |
| | | /* border-radius: 5px; */ |
| | | margin: 5px 0; |
| | | /* background-color: #fff; */ |
| | | } |
| | | |
| | | .buttonSmall { |
| | | /* border-radius: 5px; */ |
| | | } |
| | | |
| | | .vanButtonInfo { |
| | | width: 100%; |
| | | letter-spacing: 2px; |
| | | height: 50px; |
| | | font-size: 18px; |
| | | /* margin-left: 0; */ |
| | | |
| | | } |
| | | |
| | | /* |
| | | ::v-deep input[type="radio"] { |
| | | background-color: red !important; |
| | | color: red !important; |
| | | position: absolute !important; |
| | | |
| | | } |
| | | |
| | | ::v-deep .radioClass { |
| | | background-color: red !important; |
| | | color: red !important; |
| | | position: absolute !important; |
| | | } */ |
| | | |
| | | |
| | | /* input[type="radio"]+label ::before { |
| | | content: ''; |
| | | display: inline-block; |
| | | vertical-align: middle; |
| | | width: 15px; |
| | | height: 15px; |
| | | margin-right: 5px; |
| | | box-sizing: border-box; |
| | | border-radius: 50%; |
| | | margin-bottom: 4px; |
| | | border: 1px solid #bfcbd9; |
| | | } */ |
| | | </style> |
| | | </html> |
| | |
| | | } |
| | | |
| | | .body { |
| | | /* width: 96%; */ |
| | | height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | /* margin-left: 2%; */ |
| | | background-color: #fff; |
| | | position: relative; |
| | | /* display: flex; |
| | | justify-content: center; |
| | | align-items: flex-start; */ |
| | | |
| | | position: relative; |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | | background-color: #2651d8; |
| | | /* background-color: #25a4ff; */ |
| | | height: 44px; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | .body { |
| | | /* width: 96%; */ |
| | | height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | /* margin-left: 2%; */ |
| | | background-color: #fff; |
| | | position: relative; |
| | | /* display: flex; |
| | | justify-content: center; |
| | | align-items: flex-start; */ |
| | | |
| | | position: relative; |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | | background-color: #2651d8; |
| | | /* background-color: #25a4ff; */ |
| | | height: 44px; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | .body { |
| | | /* width: 96%; */ |
| | | height: 600px; |
| | | background-color: grey; |
| | | margin-top: 0px; |
| | | /* margin-left: 2%; */ |
| | | background-color: #fff; |
| | | position: relative; |
| | | /* display: flex; |
| | | justify-content: center; |
| | | align-items: flex-start; */ |
| | | |
| | | } |
| | | |
| | | .van-nav-bar__content { |
| | | background-color: #2651d8; |
| | | /* background-color: #25a4ff; */ |
| | | height: 44px; |
| | | } |
| | | |
| | |
| | | <!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"/> |
| | | <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 img = null; |
| | | var blist = []; |
| | | function scaned(t, r, f){ |
| | | var d = new Date(); |
| | | var h=d.getHours(),m=d.getMinutes(),s=d.getSeconds(),ms=d.getMilliseconds(); |
| | | if(h < 10){ h='0'+h; } |
| | | if(m < 10){ m='0'+m; } |
| | | if(s < 10){ s='0'+s; } |
| | | if(ms < 10){ ms='00'+ms; } |
| | | else if(ms < 100){ ms='0'+ms; } |
| | | var ts = '['+h+':'+m+':'+s+'.'+ms+']'; |
| | | var li=null,hl = document.getElementById('history'); |
| | | if(blist.length > 0){ |
| | | li = document.createElement('li'); |
| | | li.className = 'ditem'; |
| | | hl.insertBefore(li, hl.childNodes[0]); |
| | | } else{ |
| | | li = document.getElementById('nohistory'); |
| | | } |
| | | li.id = blist.length; |
| | | var html = '['+h+':'+m+':'+s+'.'+ms+']'+'ãã'+t+'ç <div class="hdata">'; |
| | | html += r; |
| | | html += '</div>'; |
| | | li.innerHTML = html; |
| | | li.setAttribute('onclick', 'selected(id)'); |
| | | blist[blist.length] = {type:t,result:r,file:f}; |
| | | update(t, r, f); |
| | | } |
| | | function selected(id){ |
| | | var h = blist[id]; |
| | | update( h.type, h.result, h.file ); |
| | | if(h.result.indexOf('http://')==0 || h.result.indexOf('https://')==0){ |
| | | plus.nativeUI.confirm(h.result, function(i){ |
| | | if(i.index == 0){ |
| | | plus.runtime.openURL(h.result); |
| | | var img = null; |
| | | var blist = []; |
| | | |
| | | function scaned(t, r, f) { |
| | | var d = new Date(); |
| | | var h = d.getHours(), |
| | | m = d.getMinutes(), |
| | | s = d.getSeconds(), |
| | | ms = d.getMilliseconds(); |
| | | if (h < 10) { |
| | | h = '0' + h; |
| | | } |
| | | if (m < 10) { |
| | | m = '0' + m; |
| | | } |
| | | if (s < 10) { |
| | | s = '0' + s; |
| | | } |
| | | if (ms < 10) { |
| | | ms = '00' + ms; |
| | | } else if (ms < 100) { |
| | | ms = '0' + ms; |
| | | } |
| | | var ts = '[' + h + ':' + m + ':' + s + '.' + ms + ']'; |
| | | var li = null, |
| | | hl = document.getElementById('history'); |
| | | if (blist.length > 0) { |
| | | li = document.createElement('li'); |
| | | li.className = 'ditem'; |
| | | hl.insertBefore(li, hl.childNodes[0]); |
| | | } else { |
| | | li = document.getElementById('nohistory'); |
| | | } |
| | | li.id = blist.length; |
| | | var html = '[' + h + ':' + m + ':' + s + '.' + ms + ']' + 'ãã' + t + 'ç <div class="hdata">'; |
| | | html += r; |
| | | html += '</div>'; |
| | | li.innerHTML = html; |
| | | li.setAttribute('onclick', 'selected(id)'); |
| | | blist[blist.length] = { |
| | | type: t, |
| | | result: r, |
| | | file: f |
| | | }; |
| | | update(t, r, f); |
| | | } |
| | | }, '', ['æå¼', 'åæ¶']); |
| | | } else{ |
| | | plus.nativeUI.alert(h.result); |
| | | } |
| | | } |
| | | function update(t, r, f){ |
| | | outSet('æ«ææåï¼'); |
| | | outLine(t); |
| | | outLine(r); |
| | | outLine('\nå¾çå°åï¼'+f); |
| | | if(!f || f=='null'){ |
| | | img.src = '../img/barcode.png'; |
| | | } else{ |
| | | plus.io.resolveLocalFileSystemURL(f, function(entry){ |
| | | img.src=entry.toLocalURL(); |
| | | }); |
| | | //img.src = 'http://localhost:13131/'+f; |
| | | } |
| | | } |
| | | function onempty(){ |
| | | if(window.plus){ |
| | | plus.nativeUI.alert('æ æ«æè®°å½'); |
| | | } else { |
| | | alert('æ æ«æè®°å½'); |
| | | } |
| | | } |
| | | function cleanHistroy(){ |
| | | if(blist.length > 0){ |
| | | var hl = document.getElementById('history'); |
| | | hl.innerHTML = '<li id="nohistory" class="ditem" onclick="onempty();">æ åå²è®°å½ </li>'; |
| | | } |
| | | plus.io.resolveLocalFileSystemURL('_doc/barcode/', function(entry){ |
| | | entry.removeRecursively(function(){ |
| | | // Success |
| | | }, function(e){ |
| | | //alert( "failed"+e.message ); |
| | | }); |
| | | }); |
| | | } |
| | | // æå¼äºç»´ç æ«æçé¢ |
| | | function openBarcode(){ |
| | | createWithoutTitle('barcode_scan.html', { |
| | | titleNView:{ |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // æå¼èªå®ä¹æ«æçé¢ |
| | | function openBarcodeCustom(){ |
| | | createWithoutTitle('barcode_custom.html', { |
| | | titleNView:{ |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue401', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | |
| | | function selected(id) { |
| | | var h = blist[id]; |
| | | update(h.type, h.result, h.file); |
| | | if (h.result.indexOf('http://') == 0 || h.result.indexOf('https://') == 0) { |
| | | plus.nativeUI.confirm(h.result, function(i) { |
| | | if (i.index == 0) { |
| | | plus.runtime.openURL(h.result); |
| | | } |
| | | }, '', ['æå¼', 'åæ¶']); |
| | | } else { |
| | | plus.nativeUI.alert(h.result); |
| | | } |
| | | } |
| | | |
| | | function update(t, r, f) { |
| | | outSet('æ«ææåï¼'); |
| | | outLine(t); |
| | | outLine(r); |
| | | outLine('\nå¾çå°åï¼' + f); |
| | | if (!f || f == 'null') { |
| | | img.src = '../img/barcode.png'; |
| | | } else { |
| | | plus.io.resolveLocalFileSystemURL(f, function(entry) { |
| | | img.src = entry.toLocalURL(); |
| | | }); |
| | | //img.src = 'http://localhost:13131/'+f; |
| | | } |
| | | } |
| | | |
| | | function onempty() { |
| | | if (window.plus) { |
| | | plus.nativeUI.alert('æ æ«æè®°å½'); |
| | | } else { |
| | | alert('æ æ«æè®°å½'); |
| | | } |
| | | } |
| | | |
| | | function cleanHistroy() { |
| | | if (blist.length > 0) { |
| | | var hl = document.getElementById('history'); |
| | | hl.innerHTML = '<li id="nohistory" class="ditem" onclick="onempty();">æ åå²è®°å½ </li>'; |
| | | } |
| | | plus.io.resolveLocalFileSystemURL('_doc/barcode/', function(entry) { |
| | | entry.removeRecursively(function() { |
| | | // Success |
| | | }, function(e) { |
| | | //alert( "failed"+e.message ); |
| | | }); |
| | | }); |
| | | } |
| | | // æå¼äºç»´ç æ«æçé¢ |
| | | function openBarcode() { |
| | | createWithoutTitle('barcode_scan.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue302', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:scanPicture()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // æå¼èªå®ä¹æ«æçé¢ |
| | | function openBarcodeCustom() { |
| | | createWithoutTitle('barcode_custom.html', { |
| | | titleNView: { |
| | | type: 'float', |
| | | backgroundColor: 'rgba(215,75,40,0.3)', |
| | | titleText: 'æ«ä¸æ«', |
| | | titleColor: '#FFFFFF', |
| | | autoBackButton: true, |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: '\ue401', |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | </script> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" /> |
| | | <style type="text/css" media="screen"> |
| | | .hdata { |
| | | color: #e1673e; |
| | | font-size: 14px; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | white-space: nowrap; |
| | | } |
| | | .hdata { |
| | | color: #e1673e; |
| | | font-size: 14px; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | white-space: nowrap; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body onload="img=document.getElementById('bimg')"> |
| | | <br/> |
| | | <img style="width:40%" id="bimg" src="../img/barcode.png"/> |
| | | <br/> |
| | | <br /> |
| | | <img style="width:40%" id="bimg" src="../img/barcode.png" /> |
| | | <br /> |
| | | <div class="button" onclick="openBarcode()">æ«ä¸æ«</div> |
| | | <div class="button" onclick="openBarcodeCustom()">æ«ä¸æ«ï¼èªå®ä¹ï¼</div> |
| | | <br/> |
| | | <br /> |
| | | <ul id="history" class="dlist" style="text-align:left;"> |
| | | <li id="nohistory" class="ditem" onclick="onempty()">æ åå²è®°å½ </li> |
| | | <li id="nohistory" class="ditem" onclick="onempty()">æ åå²è®°å½ </li> |
| | | </ul> |
| | | <br/> |
| | | <br /> |
| | | <div class="button button-waring" onclick="cleanHistroy()">æ¸
空åå²è®°å½</div> |
| | | <div id="outpos"/> |
| | | <div id="outpos" /> |
| | | <div id="output"> |
| | | Barcodeæä¾äºç»´ç æ«æè¯å«åè½ï¼æ¯æè°ç¨æå头峿¶æ«æäºç»´ç ï¼ä¹å¯ç´æ¥è¾å
¥å¾çè¿è¡æ«æè¯å«ã |
| | | Barcodeæä¾äºç»´ç æ«æè¯å«åè½ï¼æ¯æè°ç¨æå头峿¶æ«æäºç»´ç ï¼ä¹å¯ç´æ¥è¾å
¥å¾çè¿è¡æ«æè¯å«ã |
| | | </div> |
| | | </body> |
| | | </html> |
| | | </html> |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"/> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"/> |
| | | <meta name="HandheldFriendly" content="true"/> |
| | | <meta name="MobileOptimized" content="320"/> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady(){ |
| | | // è·åçªå£å¯¹è±¡ |
| | | ws=plus.webview.currentWebview(); |
| | | nv=ws.getTitleNView(); |
| | | wo=ws.opener(); |
| | | // å¼å§æ«æ |
| | | ws.addEventListener('show', function(){ |
| | | scan=new plus.barcode.Barcode('bcid',[plus.barcode.QR,plus.barcode.EAN8,plus.barcode.EAN13],{frameColor:'#00FF00',scanbarColor:'#00FF00'}); |
| | | scan.onmarked=onmarked; |
| | | scan.start({conserve:true,filename:'_doc/barcode/'}); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', plusReady, false); |
| | | var ws = null, |
| | | wo = null; |
| | | var scan = null; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | ws = plus.webview.currentWebview(); |
| | | nv = ws.getTitleNView(); |
| | | wo = ws.opener(); |
| | | // å¼å§æ«æ |
| | | ws.addEventListener('show', function() { |
| | | scan = new plus.barcode.Barcode('bcid', [plus.barcode.QR, plus.barcode.EAN8, plus.barcode.EAN13], { |
| | | frameColor: '#00FF00', |
| | | scanbarColor: '#00FF00' |
| | | }); |
| | | scan.onmarked = onmarked; |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('"+ type +"','"+ result +"','"+ file +"');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | var view = null; |
| | | function createSubview(){ |
| | | view = new plus.nativeObj.View('nbutton', { |
| | | bottom: '20px', |
| | | left: '30%', |
| | | width: '40%', |
| | | height: '44px' |
| | | }, [{ |
| | | tag: 'rect', |
| | | id: 'rect', |
| | | rectStyles: { |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }},{ |
| | | tag: 'font', |
| | | id: 'text', |
| | | text: 'æãå', |
| | | textStyles: { |
| | | color: '#FFFFFF' |
| | | } |
| | | }]); |
| | | // å¤çäºä»¶ |
| | | view.addEventListener('click', function(e){ |
| | | switchScan(); |
| | | }, false); |
| | | view.addEventListener('touchstart', function(e){ |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.5)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | view.addEventListener('touchend', function(e){ |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | ws.append(view); |
| | | } |
| | | // å¼å
³éªå
ç¯ |
| | | var bFlash = false; |
| | | var AVCaptureDevice=null; |
| | | var Camera=null; |
| | | function switchFlash(){ |
| | | bFlash = !bFlash; |
| | | scan.setFlash(bFlash); |
| | | ws.setStyle({titleNView: { |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: (bFlash?'\ue400':'\ue401'), |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | }}); |
| | | } |
| | | // åæ¢æ«æ |
| | | var bScan = false; |
| | | function switchScan(){ |
| | | if(bScan){ |
| | | scan.start({conserve:true, filename:'_doc/barcode/'}); |
| | | view&&(view.drawText('æãå', {}, {color:'#FFFFFF'}, 'text')); |
| | | }else{ |
| | | scan.cancel(); |
| | | view&&(view.drawText('å¼ãå§', {}, {color:'#FFFFFF'}, 'text')); |
| | | } |
| | | bScan=!bScan; |
| | | } |
| | | // äºç»´ç æ«ææå |
| | | 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | var view = null; |
| | | |
| | | function createSubview() { |
| | | view = new plus.nativeObj.View('nbutton', { |
| | | bottom: '20px', |
| | | left: '30%', |
| | | width: '40%', |
| | | height: '44px' |
| | | }, [{ |
| | | tag: 'rect', |
| | | id: 'rect', |
| | | rectStyles: { |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | } |
| | | }, { |
| | | tag: 'font', |
| | | id: 'text', |
| | | text: 'æãå', |
| | | textStyles: { |
| | | color: '#FFFFFF' |
| | | } |
| | | }]); |
| | | // å¤çäºä»¶ |
| | | view.addEventListener('click', function(e) { |
| | | switchScan(); |
| | | }, false); |
| | | view.addEventListener('touchstart', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.5)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | view.addEventListener('touchend', function(e) { |
| | | view.drawRect({ |
| | | radius: '8px', |
| | | color: 'rgba(255,0,0,0.8)' |
| | | }, {}, 'rect'); |
| | | }, false); |
| | | ws.append(view); |
| | | } |
| | | // å¼å
³éªå
ç¯ |
| | | var bFlash = false; |
| | | var AVCaptureDevice = null; |
| | | var Camera = null; |
| | | |
| | | function switchFlash() { |
| | | bFlash = !bFlash; |
| | | scan.setFlash(bFlash); |
| | | ws.setStyle({ |
| | | titleNView: { |
| | | buttons: [{ |
| | | fontSrc: '_www/helloh5.ttf', |
| | | text: (bFlash ? '\ue400' : '\ue401'), |
| | | fontSize: '18px', |
| | | onclick: 'javascript:switchFlash()' |
| | | }] |
| | | } |
| | | }); |
| | | } |
| | | // åæ¢æ«æ |
| | | var bScan = false; |
| | | |
| | | function switchScan() { |
| | | if (bScan) { |
| | | scan.start({ |
| | | conserve: true, |
| | | filename: '_doc/barcode/' |
| | | }); |
| | | view && (view.drawText('æãå', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } else { |
| | | scan.cancel(); |
| | | view && (view.drawText('å¼ãå§', {}, { |
| | | color: '#FFFFFF' |
| | | }, 'text')); |
| | | } |
| | | bScan = !bScan; |
| | | } |
| | | </script> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/> |
| | | <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: 0px; |
| | | text-align: center; |
| | | } |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | #bcid { |
| | | width: 100%; |
| | | position: absolute; |
| | | top: 0px; |
| | | bottom: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |
| | |
| | | <!DOCTYPE html> |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"/> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"/> |
| | | <meta name="HandheldFriendly" content="true"/> |
| | | <meta name="MobileOptimized" content="320"/> |
| | | <meta charset="utf-8" /> |
| | | <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" /> |
| | | <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; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady(){ |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/'}); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', plusReady, false); |
| | | var ws = null, |
| | | wo = null; |
| | | var scan = null; |
| | | // H5 plusäºä»¶å¤ç |
| | | function plusReady() { |
| | | // è·åçªå£å¯¹è±¡ |
| | | 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/' |
| | | }); |
| | | createSubview(); |
| | | }, false); |
| | | // æ¾ç¤ºé¡µé¢å¹¶å
³éçå¾
æ¡ |
| | | ws.show('pop-in'); |
| | | } |
| | | document.addEventListener('plusready', 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('"+ type +"','"+ result +"','"+ file +"');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview(){ |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture(){ |
| | | plus.gallery.pick(function(path){ |
| | | plus.barcode.scan(path,onmarked,function(error){ |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err){ |
| | | console.log('Failed: '+err.message); |
| | | }); |
| | | } |
| | | // äºç»´ç æ«ææå |
| | | 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(/\r\n/g, ''); |
| | | wo.evalJS("scaned('" + type + "','" + result + "','" + file + "');"); |
| | | back(); |
| | | } |
| | | // å建åçªå£ |
| | | function createSubview() { |
| | | // |
| | | } |
| | | // ä»ç¸åä¸éæ©äºç»´ç å¾ç |
| | | function scanPicture() { |
| | | plus.gallery.pick(function(path) { |
| | | plus.barcode.scan(path, onmarked, function(error) { |
| | | plus.nativeUI.alert('æ æ³è¯å«æ¤å¾ç'); |
| | | }); |
| | | }, function(err) { |
| | | console.log('Failed: ' + err.message); |
| | | }); |
| | | } |
| | | </script> |
| | | <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/> |
| | | <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: 0px; |
| | | text-align: center; |
| | | } |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | #bcid { |
| | | width: 100%; |
| | | position: absolute; |
| | | top: 0px; |
| | | bottom: 0px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .tip { |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | text-shadow: 0px -1px #103E5C; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body style="background-color:#000000;"> |