最佳答案
然后用户单击 input type=file
用户必须得到 upload file + camera
对话框。我用于这个 html 属性 accept
和 capture
。但在一些现代设备上,这种情况不会发生。下面是一些代码示例和表格,列出了哪些代码可以使用,哪些不可以。代码示例在 Mobile Safari
和 Chrome
中进行了测试。
译者:
我有5个代码示例,只有 input type file
:
1. (jsfiddle
)
<input type="file" accept="image/*" capture>
2. (jsfiddle
)
<input type="file" accept="image/*" capture="camera">
3. (jsfiddle
)
<input type="file" capture="camera">
4. (jsfiddle
)
<input type="file" capture>
5. (jsfiddle
)
<input type="file" accept="image/*">
测试设备:
结果表:
upload image dialog with camera
upload dialog(not image only) with camera
only camera
Chrome
Mobile Safari
#
--------------------------------------------------------------------------------
|devices/example | Ch 1| Ch 2| Ch 3| Ch 4| Ch 5| MS 1| MS 2| MS 3| MS 4| MS 5|
--------------------------------------------------------------------------------
|Samsung S3/4.1 | N | N | P | P | W | W | N | P | P | W |
--------------------------------------------------------------------------------
|Samsung S3/4.3 | N | N | P | P | P | N | N | P | P | P |
--------------------------------------------------------------------------------
|Samsung Galaxy Tab| N | N | P | P | W | W | N | P | P | W |
--------------------------------------------------------------------------------
|Samsung Note | N | N | P | P | W | W | N | P | P | W |
--------------------------------------------------------------------------------
|iPhone 5 | W | W | P | P | W | W | Y | P | P | W |
--------------------------------------------------------------------------------
|Nexus 4 | N | N | P | P | W | - | - | - | - | - |
--------------------------------------------------------------------------------
正如您所看到的,我只能得到所有浏览器使用的 upload file + camera
对话框
仅限 <input type="file" accept="image/*">
。但是在这个例子中没有 capture
属性,这让我很担心,Android 4.3有一个问题。
谢谢。
附注: 问题是特殊的,但在我的网站,我必须提供给用户访问其图像和相机。我也认为我的表可以帮助任何人,也我会寻找答案,并会张贴我的答案在这里,如果没有人回答。