javascript 文本框中,判断回车键触发事件 兼容IE&FireFox

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 文本框中,判断回车键触发事件 兼容IE&FireFox相关的知识,希望对你有一定的参考价值。

1.onkeypress&onkeydown区别

onkeypress 事件在用户按下并放开任何字母数字键时发生。但是系统按钮(例如:箭头键、功能键)无法得到识别。
onkeydown 事件在用户按下任何键盘键(包括系统按钮)时发生。捕获的 keyCode 不区分字母大小,而 onkeypress 区分。

IE6的onkeypress会接受"回车事件",而onkeydown不会接受
IE8的onkeypress不会接受"回车事件",而onkeydown会接受

FireFox中onkeypress和onkeydown都接受"回车事件"的.

 

<head> 
<script> 
function EnterPress(e){ //传入 event 
var e = e || window.event; 
if(e.keyCode == 13){ //13代表回车符
//TO_DO按下回车键后的动作
} 
} 
</script> 
</head> 
<body> 
<input type="text" id="txtName" onkeypress="EnterPress(event)" onkeydown="EnterPress()" /> 
</body>

html源码中,同时用到了onkeypress、onkeydown,但是上文说了,FireFox均接受回车事件,为了使其只运行一次,则任意的一个事件内传参数 event,另外一个不传参数。

 

最后,完成兼容IE&FireFox。

 

以上是关于javascript 文本框中,判断回车键触发事件 兼容IE&FireFox的主要内容,如果未能解决你的问题,请参考以下文章

asp.net中没用js绑定回车事件,可是为啥在文本框中输入内容后按回车键还会触发该事件?求大神解释下!

用户在文本框中按下回车的 JQuery 事件?

VB keypress事件中键盘上每个键的KeyAscii值分别是啥?

Javascript,input文本框内容改变时自动触发事件,不是keyup或者onchange,需要可以解决中文输入的问题

PYQT5(二十四)文本框回应回车事件

C#:如何在文本框中按下回车键触发按钮,但仍然允许“Ctrl+A”等快捷键通过?