输入类型=“文件”没有在Android浏览器上填充画布

时间:2015-01-15 10:46:18

标签: javascript android html5 canvas input-type-file

我尝试使用html5构建一个Web应用程序,该应用程序具有用户个人资料页面,我遇到输入类型="文件"在Android浏览器上测试时。选中后,它为我提供了打开相机或图库的选项,当选择文件时,它会填充文件字段,但我无法获取文件来填充画布。这在Android上的ios和firefox,chrome上完美运行。

这是html代码:

    <canvas id="canvas" width="160" height="120" style="border:1px solid #000000;"></canvas>
    <input type="file" capture="camera" accept="image/*" id="takePictureField" onchange="picChange(event)">

JavaScript:

功能picChange(evt) {     var fileInput = evt.target.files;

if(fileInput.length>0)
{
    var windowURL = window.URL || window.webkitURL;
    var picURL = windowURL.createObjectURL(fileInput[0]);
    var photoCanvas = document.getElementById("canvas");
    var ctx = photoCanvas.getContext("2d");
    var photo = new Image();

    photo.onload = function()
    {
        ctx.drawImage(photo, 0, 0, 160, 120);
    };
photo.src = picURL;
windowURL.revokeObjectURL(picURL);
}

}

谁能看到我做错了什么?我是否需要向windowURL添加内容以便Android可以识别它?任何帮助将不胜感激,因为这真的开始让我烦恼!!

1 个答案:

答案 0 :(得分:0)

升级到最新版本的android似乎解决了这个问题!