Safari <input type=“file” accept=“video/*”> ignores mp4 files

余生长醉 提交于 2019-11-28 20:49:06

问题


I am using an HTML file input like this:

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

to allow my users to upload videos to my site. This works as expected in all modern browsers (only permitting the user to select video files) except Safari.

From what I can tell Safari seems to interpret the accept="video/*" attribute as accept="*.mov" ignoring most, if not all, other video formats / extensions (webm, m4v, etc).

Any suggestions on how to get the select dialog to allow only common video filetypes (not just .mov's) in Safari?


回答1:


I found that the following accept string will add mp4 and m4v to the list of file types that safari will accept:

accept="video/mp4,video/x-m4v,video/*"

I'm not sure what the mime type is for webm videos but if you can look that up you should be able to tack it on to the accept string. The trick is to specify the mime type, just using a file extension won't work.




回答2:


You can take a look at webkit source code ~/Source/WebCore/platform/MIMETypeRegistry.cpp.

These types are customized by Apple for Safari, and may not be working on other browsers.



来源:https://stackoverflow.com/questions/19107685/safari-input-type-file-accept-video-ignores-mp4-files

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!