可以't基于JavaScript IE识别激活事件

Can't activate an event based on JavaScript IE recognition

本文关键字:IE 识别 激活 事件 JavaScript 基于 可以      更新时间:2023-09-26

我正试图在我的MVC项目中添加一个文本区域调整器插件,但仅适用于IE,因为其他浏览器都有内置的插件。为了做到这一点,我必须检查浏览器是否为IE。

我使用了本文中的JS:如何检测IE11?

这就是我使用的:

function getInternetExplorerVersion() {
    var rv = -1;
    if (navigator.appName == 'Microsoft Internet Explorer') {
        var ua = navigator.userAgent;
        var re = new RegExp("MSIE ([0-9]{1,}['.0-9]{0,})");
        if (re.exec(ua) != null)
            rv = parseFloat(RegExp.$1);
    }
    else if (navigator.appName == 'Netscape') {
        var ua = navigator.userAgent;
        var re = new RegExp("Trident/.*rv:([0-9]{1,}['.0-9]{0,})");
        if (re.exec(ua) != null)
            rv = parseFloat(RegExp.$1);
    }
    return rv;
}
function checkVersion() {
    var msg = "You're not using Internet Explorer.";
    var rv = getInternetExplorerVersion();
    if (rv > -1) {
        msg = "You are using IE " + ver;
    }
    alert(msg);
}

我把它插入到我的脚本文件夹中,并通过脚本部分的这一行访问它:

<script type="text/javascript" src="~/Scripts/checkIEVersion.js"></script>

然后我尝试在页面加载上实现它:

<body onload="checkVersion()">

问题是,什么都没发生。我应该得到警告,但我没有错误,什么都没有。当我只使用这两个函数的底部时(在脚本部分带有"@(document).ready"),它确实可以正确加载。

你能帮我吗?

提前感谢!

原来我也必须包括这个:

$(document).ready(function () {
                    window.onload = function () {
                        checkVersion();
                    }
                });