jquery – 检测较旧的IE版本

我需要检测用户是否从jQuery插件运行旧版本的IE(IE9是好的),所以我不能控制HTML.

我们不鼓励解析用户代理字符串并使用$.browser.msie. $.support方法也不涵盖问题.

所以,我想出这是有效的,但我不知道这是否是“良好做法”.

$('body').append('<!--[if lte IE 8]><script>$("body").addClass("oldie");</script><![endif]-->');
var old_ie = $('body').is('.oldie');

你会用这个方法还是粘贴解析用户代理字符串(我需要弄清楚是IE和获得版本号)?

解决方法

你可以运行这个
var ie = (function () {
    var undef,v = 3,div = document.createElement('div');

    while (
        div.innerHTML = '<!--[if gt IE '+(++v)+']><i></i><![endif]-->',div.getElementsByTagName('i')[0]
    );

    return v > 4 ? v : undef;
}());

检测IE的版本.

资料来源:http://ajaxian.com/archives/attack-of-the-ie-conditional-comment

接着

if ( ie < 9 ) {
    // do your stuff,for instance:
    window.location = 'http://getfirefox.com'; // :p
}

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...