HTML `capture` 属性

Posted wayou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTML `capture` 属性相关的知识,希望对你有一定的参考价值。

file 类型的 <input> 除了调起系统的文件选择框外,还可通过指定 capture 属性来现场拍照或录制。配合 accept 属性,可实现更加便捷的文件获取。

比如想要录制一段视频,可以这么写:

<input type="file" accept="video/*" capture />

点击之后直接打开摄像头进行拍摄,而不是弹起文件选择。

技术图片

`capture` 属性演示

如果没有这个 capture 属性,则需要先借助 Media?Devices?.get?User?Media() 获取用户的相机权限,然后再通过 MediaRecorder API 进行录制,处理得到的文件。

同样,对于拍照的情况也非常方便了,可以这么写:

<input type="file" accept="image/*" capture="camera" />
<!-- or -->
<input type="file" accept="image/*;capture=camera"/>

更多示例可参见 W3C 文档中示例部分

浏览器兼容性

Can I Use - HTML Media Capture 的统计来看,支持得还不是很好。但尝试后发现 ios 只能录制视频,即使指定 accept="audio/*" 也是调起视频录制,而不是录音。

相关资源

以上是关于HTML `capture` 属性的主要内容,如果未能解决你的问题,请参考以下文章

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途

从片段中捕获图像

Android - 片段的 onActivityResult() 中的 NPE

具有捕获和接受属性的 HTML 文件输入控件工作错误?

具有捕获和接受属性的 HTML 文件输入控件工作错误?

IOS10.3上传照片只能拍照不能选择解决办法