js 。 麻烦各位大侠帮我看下这些代码 ,我明明调用的是带参数的函数,为什么会执行未带参数的函数??

2024-12-18 12:34:48
推荐回答(3个)
回答1:

Firefox中的参数e是浏览器自动传递的。你这样调用是没有用的。
事实上,如果你把input那行删掉,在FF中就可以正常运行了。你现在既把它绑到document,又想绑到input,调用的方式又是错的,不能运行一点都不奇怪。另外,如果你不是打错的话,后面的keyDowm应该是keyDown

回答2:

楼上正解 看下面的是否有帮助
function keyDowm(e){
e = e ? e : window.event;
var keyCode = e.which ? e.which : e.keyCode;
if(keyCode == 13)
{
alert("回车键"); //按下“回车”键时调用表单验证函数
}
}

回答3:

你页面就是这样写的么?
如果是,那肯定错了
js是没有重载的
后面一个方法必定会覆盖掉前面一个方法
你执行的永远是无参数的那个方法
修改如下
function keyDown(e) {
event = e || window.event;
   var keycode = event.keyCode;
   var realkey = String.fromCharCode(event.keyCode);
   alert("按键码: " + keycode + " 字符: " + realkey);
}