Javascript中的关键代码检查不适用于IE

Javascript中的关键代码检查不适用于IE,javascript,javascript-events,Javascript,Javascript Events,我已经厌倦了用javascript编写一个检查关键代码的函数。它在firefox上运行良好,但在IE上不行。有人知道我的代码出了什么问题吗?有关更多详细信息,请参阅下面的代码 function textCheck(e) { var e = window.event || e alert("CharCode value: "+e.charCode) alert("Character: "+String.fromCharCode(e.charCode)) } 切换第一行代码: 看看这是否

我已经厌倦了用javascript编写一个检查关键代码的函数。它在firefox上运行良好,但在IE上不行。有人知道我的代码出了什么问题吗?有关更多详细信息,请参阅下面的代码

function textCheck(e)
{
 var e = window.event || e
 alert("CharCode value: "+e.charCode)
 alert("Character: "+String.fromCharCode(e.charCode))
}

切换第一行代码:

看看这是否有帮助

此外,如果是unicode字符,请尝试以下操作:

function displayunicode(e) {
    var unicode=e.keyCode? e.keyCode : e.charCode
    alert(unicode)
}

如果您正在处理
keydown
而不是
keypress
,那么事情会变得更复杂一些。。。请参阅:

切换您的第一行代码:

看看这是否有帮助

此外,如果是unicode字符,请尝试以下操作:

function displayunicode(e) {
    var unicode=e.keyCode? e.keyCode : e.charCode
    alert(unicode)
}

如果您正在处理
keydown
而不是
keypress
,那么事情会变得更复杂一些。。。请参阅:

keyCode和charCode值在不同浏览器中的行为略有不同,并为各种事件返回不同的值。IE的旧版本尤其不支持字符码。我的第一个建议是使用jQuery这样的工具来处理跨浏览器键值的规范化。使用jQuery,您可以使用事件对象上的e.which属性来获取规范化值

另一件事是使用键代码检查器比较每个浏览器的每个事件返回的值。我建立了一个方便的在线工具来实现这一点,并发现一眼就能显示每个事件的所有keycodes/charcode非常有用:


使用不同的组合键进行实验并查看它们在不同浏览器上的比较非常容易。jQuery的which和keypress往往是最一致的。keyCode和charCode值在不同浏览器中的行为略有不同,并为各种事件返回不同的值。IE的旧版本尤其不支持字符码。我的第一个建议是使用jQuery这样的工具来处理跨浏览器键值的规范化。使用jQuery,您可以使用事件对象上的e.which属性来获取规范化值

另一件事是使用键代码检查器比较每个浏览器的每个事件返回的值。我建立了一个方便的在线工具来实现这一点,并发现一眼就能显示每个事件的所有keycodes/charcode非常有用:


使用不同的组合键进行实验并查看它们在不同浏览器上的比较非常容易。jQuery的which和keypress往往是最一致的功能。

请添加您的呼叫站点,以便我们可以看到您如何调用此功能。请添加您的呼叫站点,以便我们可以看到您如何调用此功能。