2013-10-12 6 views
1
내가 폰갭 일하고

에 이미지를 업로드 파일을 변경 한 후 미리보기에서 안드로이드 전화에 표시 및 이미지 업로드 파일의 미리보기를 표시하는 코드를 다음과 쓴하지 : 이것은 브라우저에서 작동하지만 표시되지이미지는 폰갭

function readURL(input) { 
    if (input.files && input.files[0]) { 
     var reader = new FileReader(); 

     reader.onload = function (e) { 
      var img ='<div style="padding:10px; margin:10px; border: solid 2px #666;float: left; width:30%"><img src="'+ e.target.result+'" width="100%" /></div>'; 
      $('#images_area').append(img); 
     } 

     reader.readAsDataURL(input.files[0]); 
    } 
} 


    $("#image_upload_field").change(function(){ 
    readURL(this); 
}); 

안드로이드 전화에 이미지를 phonegap. 그래서 이유를 찾고 있는데 왜 일어나고 있는지, 전화 상에 물음표가 보이고 있습니다.

cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-file.git 
cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-file-transfer.git 

이 2 줄

은 폰갭의 사용 설명서에서 다음과 같습니다

또한 이런 짓을. 그리고 안드로이드 설정과 매니페스트 파일의 변경은 2 줄 이상의 실행 후에도 이루어집니다.

그래서 작동하지 않는 이유는 무엇입니까? 어떤 생각인지 알려주세요.

+0

는 당신이 이미지 URL을 제공 할 수있다. 예를 들어 실제로 앱에서 작동하지 않는 이미지는 아닙니다 ... – TorchMan

답변

1

이 시도 :

$(document).ready(function() { 
      function readURL(input) { 
       if (input.files && input.files[0]) { 
        var reader = new FileReader(); 
        reader.onload = function (e) { 
         var image; 
         var fileName = input.files[0].name; 
         var type = 'image/' + fileName.split('.').pop(); 
         if (type == 'image/jpg') { 
          type = 'image/jpeg'; 
          image = ((e.target.result).replace('data:base64,/', 'data:' + type + ';base64,/')); 
         } else { 
          image = ((e.target.result).replace('data:base64,', 'data:' + type + ';base64,')); 
         } 
         var img = '<div style="padding:10px; margin:10px; border: solid 2px #666;float: left; width:30%"><img src="' + image + '" width="100%" /></div>'; 
         $('#images_area').append(img); 
        } 
        reader.readAsDataURL(input.files[0]); 
       } 
      } 

      $("#image_upload_field").change(function() { 
       readURL(this); 
       }); 
})