使用表单输入访问相机并使用Web应用程序立即上传照片

mic*_*cah 73 javascript forms mobile html5 web-applications

我遇到了这个很棒的答案:

在iPhone iOS6和Android ICS以上,HTML5具有以下标签,可让您从设备拍摄照片:

    <input type="file" accept="image/*" capture="camera">
Run Code Online (Sandbox Code Playgroud)

Capture可以采用相机,摄像机和音频等值.

是否可以通过使用某种类型的jax来进一步采取这一步骤,以便在拍摄后立即上传照片?

例如,使用我的手机,一旦我点击输入,它然后打开相机,这将立即允许我拍照并保存.当我将其保存到相机时,它会被输入按钮列为要上传的文件.

如何立即上传此照片而不是等待用户单击表单的"提交"按钮需要什么?

Ray*_*lus 91

这样做非常简单,只需通过文件输入的onchange处理程序内的XHR请求发送文件即可.

<input id="myFileInput" type="file" accept="image/*;capture=camera">

var myInput = document.getElementById('myFileInput');

function sendPic() {
    var file = myInput.files[0];

    // Send file here either by adding it to a `FormData` object 
    // and sending that via XHR, or by simply passing the file into 
    // the `send` method of an XHR instance.
}

myInput.addEventListener('change', sendPic, false);
Run Code Online (Sandbox Code Playgroud)

  • @iluvpinkerton当然,请使用(或查看)[Fine Uploader](http://fineuploader.com)或[ajax-form](https://github.com/rnicholus/ajax-form).免责声明 - 我是两个图书馆的开发者. (3认同)