是否有任何通用方法可以使用功能检测来检测 iOS6 设备。
问问题
894 次
2 回答
2
您可以检查FileReader
API,但当然这也适用于许多现代桌面浏览器(我不确定这是否会给您带来一些问题,但我对此表示怀疑):
var iOS6 = false;
if(window.FileReader)
{
iOS6 = true;
}
于 2012-12-10T12:01:17.160 回答
2
我认为最好的方法始终是解析用户代理字符串,但您可以使用以前不支持的功能检测 iOS 6 引入的 Safari 版本(请参阅本文以获得更完整的列表,我将仅提供一个示例)。
基本上,您必须模仿modernizr使用的相同技术,使用这段代码,您将检查该<input>
类型file
是否受支持,如果支持,则您正在运行iOS 6 或更高版本的Safari。当然,仅使用功能您不能确定用户没有使用其他浏览器(这就是为什么如果您必须检测操作系统版本,我更喜欢用户代理字符串)。如需比较,请参阅SO 上的这篇文章。
function isNewVersion() {
var elem = document.createElement("input");
elem.setAttribute("type", "file");
return elem.type !== "text";
}
于 2012-12-10T12:01:37.677 回答