我依靠jQuery不推荐使用的$.browser
功能来为某些浏览器应用quirk修复程序。例如:
if ($.browser.msie && $.browser.version < 9) {
此功能在jQuery 1.9中为removed所以我正在寻找替代方案。 jQuery建议使用Modernizr进行功能检测,但该插件似乎没有涵盖我需要的功能。这个功能的(联合国)官方替代品是什么?
答案 0 :(得分:3)
自jQuery 1.3以来已弃用jQuery.browser()
方法,并且在1.9
来自jQuery API文档:
而不是使用
$.browser
来检测当前用户代理并进行更改 基于浏览器运行的页面显示,这是一个很好的 练习使用特征检测。为了使这个过程更简单, jQuery执行许多这样的测试并设置属性jQuery.support
对象。
对于更高级的功能检测,您应该像@Pointy建议的那样Modernizr。
答案 1 :(得分:2)
如果您导入Modernizr,您可以使用以下内容测试IE版本:
if ($('body').is('.lt-ie9 *')) {
// IE8, 7, 6 ...
}
编辑 - oops我修复了它; $(document)
不起作用,我现在不记得为什么。
Modernizr还具有许多更具体的特征检测功能,并且它是可配置的,因此您只能获得所需的检测。它无法检测到一切;像布局错误这样的东西很难自动检测。