2016-01-04 89 views
2

我試圖實現2條碼掃描儀到2個不同的按鈕。問題是,當我按下一個或另一個按鈕時,兩個腳本都與每個按鈕一起使用。我需要將它們分開嗎?英特爾xdk 2條碼掃描儀

按鈕1:

<a class="uib-graphic-button default-graphic-sizing default-image-sizing hover-graphic-button active-graphic-button default-graphic-button default-graphic-text widget uib_w_52 d-margins skenavimo_tekstas media-button-text-bottom" data-uib="media/graphic_button" 
       data-ver="0" id="scan1" style="position: relative; display:block; float:center; width: 10%; padding-bottom: 10%; 
width: 50%; margin: 0 auto; " onclick="scanNow();"> 

按鈕2:

<a class="button widget uib_w_54 d-margins testas icon camera yellow" data-uib="app_framework/button" data-ver="1" id="scan2" onclick="scanNow2();">Scan</a> 

SCRIPT1:

<script> 
     function scanNow() 
      { 
       //this function launches the QR Code scanner. 
       intel.xdk.device.scanBarcode(); 
      } 
      document.addEventListener("intel.xdk.device.barcode.scan",function(evt){ 
       if (evt.success == true) { 
        //successful scan 
        alert("I'm number 1"); 
       } 
       else 
       { 
        //failed scan 
        alert("ERROR"); 
       } 
      },false); 
    </script> 

SCRIPT2:

<script> 
    function scanNow2() 
      { 
       //this function launches the QR Code scanner. 
       intel.xdk.device.scanBarcode(); 
      } 
    document.addEventListener("intel.xdk.device.barcode.scan",function(ted){ 
       if (ted.success == true) { 
        //successful scan 
       alert("I'm nubmer 2"); 
       }else{ 
       //failed scan 
        alert("ERROR"); 
       } 
      },false); 
    </script> 

回答

2

你在代碼註冊2個事件處理程序,這樣既當u調用intel.xdk.device.scanBarcode();你應該有一個事件處理程序和處理2宗事件處理程序像下面被觸發:

<script> 

var scan = 0; 

function scanNow(){ 
    scan = 1; 
    intel.xdk.device.scanBarcode(); 
} 

function scanNow2(){ 
    scan = 2; 
    intel.xdk.device.scanBarcode(); 
} 

document.addEventListener("intel.xdk.device.barcode.scan",function(ted){ 
    if (ted.success == true) { 
     if(scan == 1){ 
      scan = 0; 
      alert("I'm number 1"); 
     } else if(scan == 2){ 
      scan = 0; 
      alert("I'm number 2"); 
     } 
    }else{ 
     alert("ERROR"); 
    } 
},false); 

</script> 
+0

非常感謝你!!!!現在它可以工作。 – dziugas009