首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用jQuery.support检测IE7及更低版本?

如何使用jQuery.support检测IE7及更低版本?
EN

Stack Overflow用户
提问于 2013-04-02 11:15:38
回答 7查看 8.5K关注 0票数 6

目前,我正在使用jQuery.browser来检测IE7和更低版本

代码语言:javascript
复制
if ($.browser.msie && parseInt($.browser.version) <= 7) {
    //codes
}

但是jQuery.browser在jQuery 1.3中被弃用,并在jQuery 1.9中被删除,我从jQuery网站上读到我们应该使用功能检测来代替(jQuery.support)。

那么,如何使用jQuery.support来检测IE7及更低版本呢?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2013-04-02 12:18:43

最好的方法是使用条件注释,并使用jQuery的hasClass()进行检查。

代码语言:javascript
复制
<!--[if lt IE 7]>      <html class="ie6"> <![endif]-->
<!--[if IE 7]>         <html class="ie7"> <![endif]-->
<!--[if IE 8]>         <html class="ie8"> <![endif]-->
<!--[if gt IE 8]><!--> <html>         <!--<![endif]-->

在你的jQuery中,检查IE 7:

代码语言:javascript
复制
// Check IE 7
if ($('html').hasClass('ie7');

无论如何,此方法都不能被欺骗。另请参阅:保罗·爱尔兰的Conditional Stylesheets

票数 10
EN

Stack Overflow用户

发布于 2013-04-02 12:39:39

这个小函数将告诉你按钮代码是否损坏:

代码语言:javascript
复制
function isButtonBroken()
{
    var b = document.createElement('button');

    b.value = 1;
    b.appendChild(document.createTextNode('2'));

    return b.value === '12';
}
票数 2
EN

Stack Overflow用户

发布于 2013-04-02 11:56:35

jQuery.Support不会为您提供浏览器。从jQuery 1.9开始,不推荐使用$.browser函数。如果你过了一段时间后,最简单的办法就是使用浏览器的原生导航器对象。

代码语言:javascript
复制
//check for IE7
if(navigator.appVersion.indexOf("MSIE 7.")!=-1)

使用现代化

代码语言:javascript
复制
//check for IE7 or less
if ($('html').hasClass('lt-ie7');

但是,不建议这样做,因为浏览器可以很容易地“欺骗”此对象。使用诸如Moderizer之类的库来进行特征检测是一种现代方法。有关更多详细信息,请参阅:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15755459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档