浏览器脚本兼容 文本框中,回车键触发事件的兼容

 更新时间:2010年06月21日 15:03:58   作者:  
在文本框中输入完内容后,经常需要按回车,焦点跳到下个文本框,或者触发按钮事件
判断是否按下的为回车非常简单:
复制代码 代码如下:

function EnterPress(){
if(event.keycode == 13){
...
}
}

IE6的onkeypress会接受"回车事件",而onkeydown不会接受
IE8的onkeypress不会接受"回车事件",而onkeydown会接受
...不用纠结于此,两个都写上吧
复制代码 代码如下:

<input type="text" onkeypress="EnterPress()" onkeydown="EnterPress()" />

但是,到了FF下面,又会出现矛盾.FF是onkeypress和onkeydown都接受"回车事件"的.
同时,为了兼容FF下面能获得event,需要这样写:
复制代码 代码如下:

function EnterPress(e){ //传入 event
var e = e | window.event;
if(e.keycode == 13){
...
}
}

那么,只要给任意的一个事件内传参数 event,另外一个不传参数,即可以让FF只执行一次了:
复制代码 代码如下:

&<input type="text" onkeypress="EnterPress(event)" onkeydown="EnterPress()" />

综上,兼容IE和FF:
复制代码 代码如下:

<head>
<script>
function EnterPress(e){ //传入 event
var e = e | window.event;
if(e.keycode == 13){
document.getElementById("txtAdd").focus();
}
}
</script>
</head>
<body>
<input type="text" id="txtName" onkeypress="EnterPress(event)" onkeydown="EnterPress()" />
<input type="text" id="txtAdd" />
</body>

--by:泡沫的幻想

相关文章

  • JS如何使用正则表达式(match)截取括号中的文字和数字

    JS如何使用正则表达式(match)截取括号中的文字和数字

    正则表达式是一种用来匹配文本模式的工具,这篇文章主要给大家介绍了关于JS如何使用正则表达式(match)截取括号中文字和数字的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • 自己编写的类似JS的trim方法

    自己编写的类似JS的trim方法

    在这里我们可以使用自己编写的trim方法来处理一些剪掉字符串两端的空字符串的需要,下面有个不错的方法,感兴趣的朋友可以参考下
    2013-10-10
  • js实现连续英文字符自动换行兼容ie6 ie7和firefox

    js实现连续英文字符自动换行兼容ie6 ie7和firefox

    英文字符自动换行,通过js脚本截断字符串,此方法通用ie6,ie7,firefox,使用CSS控制强制换行实现不了的朋友可以尝试下
    2013-09-09
  • javascript中的循环语句for语句深入理解

    javascript中的循环语句for语句深入理解

    for循环是多数语言都有的。在javascript中,for循环有几种不同的使用情况,下面为大家一一介绍下
    2014-04-04
  • 尝试在让script的type属性等于text/html

    尝试在让script的type属性等于text/html

    我们可以在script片断中定义一个被JS调用的代码,但代码又不在页面上显示,这时,我们可以使用下面的方法;当script中的type等于text/html时我们可以做些什么呢?感兴趣的朋友可以了解下啊
    2013-01-01
  • 浅析javascript中函数声明和函数表达式的区别

    浅析javascript中函数声明和函数表达式的区别

    这篇文章主要介绍了浅析javascript中函数声明和函数表达式的区别,需要的朋友可以参考下
    2015-02-02
  • 浅谈es6中的元编程

    浅谈es6中的元编程

    这篇文章主要介绍了浅谈es6中的元编程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • js实现飞入星星特效代码

    js实现飞入星星特效代码

    这篇文章主要介绍了js实现飞入星星特效代码,主要通过控制背景与飞入点的样式,结合setTimeout函数即可实现星星飞入的效果,对于学习javascript有不错的参考借鉴价值,需要的朋友可以参考下
    2014-10-10
  • JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解

    JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解

    这篇文章主要介绍了JS中的算法与数据结构之二叉查找树(Binary Sort Tree),结合实例形式详细分析了二叉查找树(Binary Sort Tree)的原理、定义、遍历、查找、插入、删除等常见操作技巧,需要的朋友可以参考下
    2019-08-08
  • JavaScript 井字棋人工智能实现代码

    JavaScript 井字棋人工智能实现代码

    JavaScript fights back in this artificial Tic Tac Toe game. Great script to have to entertain yourself and your visitors.
    2009-12-12

最新评论