我们有一个主要由 iPad 在现场使用的网站(不是一个应用程序,大小适合在 iPad 上使用),显然刚刚发布的更新导致了输入问题。我们有一个 HTML 输入,用于允许他们从保存的图片中进行选择:
<input class="fileInput" type="file" name="file" accept="image/*" capture>
现在它只能打开相机,而没有使用卷轴的选项。这是别人见过的东西吗?有解决方法吗?
谢谢,
詹姆士
它只打开相机,因为你使用布尔属性capture
。根据HTML 媒体捕获规范:
The capture
...如果指定,则表示使用媒体捕获机制直接从设备环境捕获媒体是首选。当指定捕获属性时,用户代理应该调用特定的文件选择器捕获控制类型.
在本规范中,术语捕获控制类型指一种专门类型的文件选择器控件,它针对用户进行了优化,用于直接捕获由接受属性指定的 MIME 类型的媒体,使用媒体捕获机制.
期限媒体捕获机制指设备的本地媒体捕获设备,例如摄像头或麦克风。
对于你的情况,最好使用<input>
没有capture
, 根据HTML规范,似乎提供选项是一种常见的浏览器行为:
用户代理可以使用该属性的值(接受)来显示比通用文件选择器更合适的用户界面。例如,给定值 image/*,用户代理可以为用户提供使用本地相机或从其照片集中选择照片的选项;
3年前有过关于这种“文件输入控制”行为的讨论:具有捕获和接受属性的 HTML 文件输入控件工作错误?可以看到“当捕获属性存在时显示选项对话框”让人困惑。
在我看来,10.3.1 中的 iOS 更改是fix用于文件输入控制。否则的话,有或没有就没有什么区别了capture
属性。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)