2013-07-29 4 views
1

QR 스캐너를 추가하려고하는 PhoneGap 앱이 있습니다. 이렇게하려면 PhoneGap Build의 BarcodeScanner 플러그인을 사용하고 있습니다. 내가 겪고있는 문제는 스캔이 완료되면 경고로 인해 앱이 멈추는 것입니다. PhoneGap BarcodeScanner가 iOS 앱을 멈추게합니다.

관련 자바 스크립트

이에

var options="" 
options += '<p>'+formData["form"][formPart][1]+'</p>' 
options += '<a data-role="button" data-rel="dialog" formPart="'+formPart+'"id="Cap-'+formPart+'">Capture Image</a>' 
options += '<p id="Cap-Data"></p>' 
$('#formContent').append(options); 
$('#Cap-'+formPart).on("tap",function(event){ 
var scanner = cordova.require("cordova/plugin/BarcodeScanner"); 
scanner.scan(
function (result) { 
    var FP = $(this).attr("formPart"); 
    $('#Cap-Data').html(result.text); 
    alert(result.text); 
    }, 
    function (error) { 
    alert("Scanning failed: " + error); 
    } 
); 
}); 

어떤 도움이 많이 주시면 감사하겠습니다입니다.

답변

4

문제는 alert 또는 prompt과 같은 기능이 반환 될 때까지 실행을 완전히 중지합니다. setTimeout() 경고 코드를 넣으십시오. 시간 제한은 필요 없지만 0ms로 설정할 수 있습니다. 따라서 즉시 발생하지만 흐름을 차단하지는 않습니다.

setTimeout(function() { 
    alert(result.text); 
}, 0); 

This question

setTimeout(fn, 0) 이러한 상황에 도움이 이유에 대해 좋은 읽을 수 있습니다.

+0

하! iOS는 새로운 IE6입니다. 수정 해 주셔서 감사합니다. 제 정확한 문제였습니다. –

관련 문제