HTML `capture` 属性

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

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

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

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

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/*" 也是调起视频录制,而不是录音。

相关资源

转载于:https://www.cnblogs.com/Wayou/p/html_capture_attribute.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值