我正在使用JavaScript创建网站。 JS部分的目的是将我自己的键盘处理程序附加到某些文本字段。 我设法缩小问题,因为这小提琴一样简单的代码:
http://jsfiddle.net/k9s3n/1/
在Firefox,Opera和Chrome浏览器,在关键代码显示一个警告框,键入三个字段结果的任何字符。在Internet Explorer中(我的情况是IE8,这是我通常支持的最低版本),但是,只有input3
可以正常工作 - 也就是说,它是释放密钥时显示对话框的唯一字段。试图在其他两个框中键入没有结果,它只是在控制台中记录一个错误:
keyCode is null or isn't an object
(不知道如果错误信息是正确的,我从我的母语翻译它)。
似乎只有第三种解决方案不管浏览器如何工作,但在我的场景中,我必须使用第一种或第二种解决方案。事件处理程序在Internet Explorer中不工作
我已经创建了进一步调查另一个小提琴:
http://jsfiddle.net/bSdaJ/
按钮的两个,点击后,会导致一个消息框来显示。在Firefox,Opera和Chrome中,框中显示“[object MouseEvent]”,而在IE中则显示“未定义”。
我该怎么办?感谢您提前提供任何帮助。
P.S.正如第一个小提琴所表明的,如果我使用内联事件处理,一切正常。但是,我在这个项目中的目标是完全分离HTML和JS,所以我不能使用它。我正在为朋友做这件事,我希望HTML部分是简单明了的标记代码。
它为我的IE9。小提琴在IE中不适合你吗? – 2012-04-11 19:20:35
不,它没有。显然,IE9更符合标准。 – rhino 2012-04-11 19:21:14
您使用的是什么版本的IE? – 2012-04-11 19:28:45