【问题标题】:Input type="file" take a photo option输入 type="file" 拍照选项
【发布时间】:2016-01-25 21:20:33
【问题描述】:

我想知道为什么相机/选择文件的行为不仅在浏览器(Chrome、Safari)之间存在差异,而且在不同平台上的同一浏览器之间(Android Chrome 与 iPhone Chrome)也存在差异?

Modernizr.getusermedia 在 Android 上返回 true,但在 iPhone 上返回 false

问题:在 iPhone Modernizr.getusermedia === false 上,但在 <input type="file" /> 菜单 Chrome/Safari 上建议我制作照片/视频。

问题: 有没有办法让 JavaScript 控制这种行为?

【问题讨论】:

  • 顺便说一句 - android 上的 chrome 与 ios 上的 chrome 是 no 相同的浏览器。一点也不。 Apple 不允许使用第三方网络引擎。因此,chrome on ios 只是 safari 网页视图的包装。
  • @Patrick 谢谢,好点

标签: javascript android ios iphone modernizr


【解决方案1】:

尝试将capture 属性添加到input 元素?

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

Polyfill file input with accept capture (using getUserMedia to capture?)Capturing Audio & Video in HTML5

【讨论】:

【解决方案2】:

我想知道为什么同一浏览器在不同平台(Android Chrome 与 iPhone Chrome)上的相机/选择文件行为不同?

Chrome on iOS is actually just a wrapper around Webkit,Safari 的渲染引擎。

在 iPhone Modernizr.getusermedia === false 上,但在 &lt;input type="file" /&gt; 菜单 Chrome/Safari 上建议我制作照片/视频。

这是两个不同的 API。 getUserMedia 是一个复杂的 JavaScript API,Safari 没有实现,而 &lt;input type="file" accept="image/*"/&gt; 是一个非常简单的 HTML5 API。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-15
    • 1970-01-01
    • 2017-11-24
    • 2015-11-18
    • 2014-11-13
    • 2014-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多