javascript - 检查 IE 10

标签 javascript internet-explorer internet-explorer-10

如果用户使用的是 IE 10,我如何在页面加载时显示消息框?

function ieMessage() {
    alert("Hello you are using I.E.10");
}

我的网页是 JSF facelet (XHTML)。

最佳答案

在没有条件注释和用户代理嗅探的情况下检测到这一点的真正方法是条件编译:

<script type="text/javascript">
    var isIE10 = false;
    /*@cc_on
        if (/^10/.test(@_jscript_version)) {
            isIE10 = true;
        }
    @*/
    console.log(isIE10);
</script>

运行此代码后,您可以随时使用以下内容:

if (isIE10) {
    // Using Internet Explorer 10
}

引用:How can I detect IE10 from JS when browser mode is IE9?


更新:

为了避免缩小评论,您可以使用类似的东西:

var IE = (function () {
    "use strict";

    var ret, isTheBrowser,
        actualVersion,
        jscriptMap, jscriptVersion;

    isTheBrowser = false;
    jscriptMap = {
        "5.5": "5.5",
        "5.6": "6",
        "5.7": "7",
        "5.8": "8",
        "9": "9",
        "10": "10"
    };
    jscriptVersion = new Function("/*@cc_on return @_jscript_version; @*/")();

    if (jscriptVersion !== undefined) {
        isTheBrowser = true;
        actualVersion = jscriptMap[jscriptVersion];
    }

    ret = {
        isTheBrowser: isTheBrowser,
        actualVersion: actualVersion
    };

    return ret;
}());

并访问 IE.isTheBrowserIE.actualVersion 等属性(从 JScript 版本的内部值转换而来)。

关于javascript - 检查 IE 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16135814/

相关文章:

jquery - IE7 中 jQuery 选择器中的特殊字符

javascript - IE10 MSPointerUp 在不释放手指的情况下触发(触摸保持时)

javascript - Mirth - 在一个轮询间隔内发送多条 HL7 消息

javascript - Internet Explorer 添加样式标签

javascript - 如何使用样式化组件覆盖 React 组件样式?

javascript - jQuery 未定义,Electron

html - 在 webkit、gecko 和 IE10+ 上使用 text-shadow css 模糊文本

css - Primeflex Flexgrid 是否支持 IE11?让 flexgrid 在 IE 上工作的任何解决方法?

html - IE10 中的 Flex 收缩

css - IE 10 不支持纯文本装饰