最近写一个小的widget,需要来完成对于键盘事件的监听。以前的浏览器匹配都是手工去做,很是麻烦。这次使用一下鼎鼎有名的jQuery来试一下,但遇到了一些小的问题,不知道是不bug。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>jQuery</title> <script type="text/javascript" src="../lib/jquery/jquery-1.3.2.min.js"></script> <script> $(function(){ $("#wrapper").bind("keyup",function(event){ $("#result").html(String.fromCharCode(event.keyCode)); }); }); </script> </head> <body id="wrapper"> <div id="result"></div> </body> </html>
代码如上,按道理说应该没有什么问题的,但是我在我的FF下试验时去没有任何响应(我的FF是3.5.4),在我的IE 6.0中也没有任何响应,在Opera 10中刷新一下后确有响应,很是让人郁闷。
改改代码,将上面的jQuery的$()中的#wrapper改为body,在FF和IE中仍然没有任何响应,这次在Opera中完全没问题。去掉$()中的所有东西。
$(function(){ $().bind("keyup",function(event){ $("#result").html(String.fromCharCode(event.keyCode)); }); });
这下好了,所有的浏览器都支持了。