有没有办法用javascript/jquery/crazy-css-hack来检测用户的浏览器是否支持渲染功能<input type="file" />文件上传元素?例如,iOS上的safari浏览器不会呈现该元素,而是希望向用户显示不支持该功能的消息.我知道我可以检查用户代理并检查它是否是iphone/ipad /等,但我不知道其他浏览器做了什么或不支持它,或者将来是否会支持它.
Galambalazs的回答指出我只适用于iOS的正确方向.我最终使用了这个:
function supportsFileInput() {
var dummy = document.createElement("input");
dummy.setAttribute("type", "file");
return dummy.disabled === false;
}
Run Code Online (Sandbox Code Playgroud)
但是,它对大多数Android设备都不起作用,因为此函数始终返回true,但呈现的文本为"Uploads disabled".