Galambalazs的回答指出,我只能在iOS的正确方向。我最终使用了这个:
函数supportsFileInput(){ var dummy = document.createElement(input) ; dummy.setAttribute(type,file); return dummy.disabled === false; }然而,它不适用于大多数Android设备,因为此功能始终返回true,但呈现带有文字禁用上传的按钮。
Is there a way with a javascript/jquery/crazy-css-hack to detect if the user's browser supports rendering a functional <input type="file" /> file upload element? For example, the safari browser on iOS won't render the element and I would like to instead show a message to the user that the functionality isn't supported. I know I can inspect the user agent and check to see if it an iphone/ipad/etc but I don't know what other browsers do or do not support it or will or will not support it in the future.
解决方案Galambalazs' answer pointed me in the right direction for iOS only. I ended up using this:
function supportsFileInput() { var dummy = document.createElement("input"); dummy.setAttribute("type", "file"); return dummy.disabled === false; }However, it doesn't work for most Android devices, as this function always returns true but renders the button with the text "Uploads disabled".
更多推荐
检测浏览器对html文件输入元素的支持
发布评论