监听页面回车事件

网页中经常要用到,回车执行搜索、回车执行表单提交等功能,而且鉴于IE和Firefox对事件处理的方式不一样,所以在网上查阅并总结如下:

1、将事件写成全局的,捕获页面内的所有按键,通过判断,只对指定的元素“input_id”处于焦点时再捕获回车事件

document.onkeydown = function(e) { // 兼容FF和IE和Opera var theEvent = e || window.event; var code = theEvent.keyCode || theEvent.which || theEvent.charCode; var activeElementId = document.activeElement.id;//当前处于焦点的元素的id if (code == 13 && activeElementId == "input_id") { doSomething();//要触发的方法 return false; } return true; }

2、将该函数直接写在要指定元素的onkeydown事件中,这样就不用去获取当前处于焦点的元素了

<input type="text"  onkeydown="keyDownSearch(e)"  />  

js代码:

function keyDownSearch(e) { // 兼容FF和IE和Opera var theEvent = e || window.event; var code = theEvent.keyCode || theEvent.which || theEvent.charCode; if (code == 13) { doSomething();//具体处理函数 return false; } return true; }