1.window.event.keyCode的用法:设置或获取与导致事件的按键关联的 ASCII 按键代码。
示例: HTML代码:
1 | <input type="text" οnkeydοwn="kenNumIE();" /> |
JS代码:
1 2 3 4 5 | function kenNumIE(){ if(window.event.keyCode==13){ alert("你按的是回车键!"); } } |
说明:当把光标置入输入框后按回车键,就会触发kenNumIE()事件。(回车键的ASCII是13)
但是该方法只对IE有效,原因是Firefox的window对象没有event属性,所以window.event是不存在的,Firefox只能在事件句柄函数的第一个参数获取事件对象。2.兼容Firefox的方法:
HTML代码:
1 | <input type="text" οnkeydοwn="keyNumAll(event);" > |
JS代码:
1 2 3 4 5 6 7 | function keyNumAll(evt){ evt = (evt) ? evt : ((window.event) ? window.event : ""); //兼容IE和Firefox获得keyBoardEvent对象 var key = evt.keyCode?evt.keyCode:evt.which; //兼容IE和Firefox获得keyBoardEvent对象的键值 if(key == 13){ alert("你按的是回车键!"); } } |
这样,当你按回车键时,就可以触发keyNumAll(event)事件了。
于是代码终于可以在IE和Firefox运行了!
注意:
1. 取得keyBoardEvent对象 2. 取得keyBoardEvent对象的键值 3. οnkeydοwn="keyNumAll(event)" 函数需要一个参数,并且参数的名称为event.