我有一个看似简单的问题,但我找不到解决方案。给定以下代码:
<html>
<head>
<script type="text/javascript">
document.onkeypress = function(ev) {
if (!ev) { alert("Broken"); return; }
var key = ev.charCode || ev.keyCode;
alert(key);
}
</script>
</head>
<body>Test</body>
</html>
如果我将它保存为文件并将其加载到 IE 中并按下一个键,它总是会出现“损坏”警报,而在 Firefox 中它可以正常工作(通过键码发出警报)。
如果我使用window.onkeypress
而不是文档处理程序,则在 IE 中根本不会调用它。如果我在事件中附加处理程序,onload
它没有任何区别。使用类似keydown
或keyup
不产生影响的事件(在 IE 中仍然存在问题)。
然而,当我使用jsfiddle 作为示例时,它在 IE 中运行良好。
那么:jsfiddle 与上面的代码有什么不同,我如何让它在 IE 中工作?