分享

一段巧妙的判断IE浏览器版本的js代码

 单子公 2013-02-05

下面这段代码使用IE可以识别html注释的特性,可以准确的判断IE浏览器的版本号,没有使用诸多怪异的测力检测方法,超级简洁。

/**
 * ie equals one of false|6|7|8|9 values, ie5 is fucked down.
 * Based on the method: https://gist.github.com/527683
 */
var ie = function () {
    var v = 4, //原作者的此处代码是3,考虑了IE5的情况,我改为4。
        div = document.createElement('div'),
        i = div.getElementsByTagName('i');
    do {
        div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->';
    } while (i[0]);
    return v > 5 ? v : false; //如果不是IE,之前返回undefined,现改为返回false。
}();


还有: 只有一行代码,只针对IE起作用,而且考虑了IE用户自选渲染模式、怪癖模式、支持IE5、6、7、8、9及10。 /*@cc_on alert(document.documentMode||( document.compatMode == "CSS1Compat" ?
"XMLHttpRequest" in window ? @_jscript_version*10-50 : 6 : 5)) @*/
// 说明:必须包含/*@cc_on …. @*/,因为这是IE的编译模式

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多