longleg_thy 2008-08-01 15:40
浏览 150
已采纳

在JS中,带参数的事件如何获得

比如我们可以这样
[code="HTML"]
Button
[/code]
[code="JavaScript"]
document.getElementById("btu").onclick = function(e){
var evt = e || window.event;

var evtTarget = evt.target || evt.srcElement;

if(evtTarget.nodeType==3){

evtTarget = evtTarget.parentNode;//for Safari;

}
//在这里我们就可以获得事件对象以及事件源。
}
[/code]
请问,如果我的事件中要传递其它参数,那么怎么获得默认第一个参数中的e?
[code="HTML"]
Button
[/code]
[code="JavaScript"]
function evt(arg){
//在这我可以获得window.event,但是对于火狐,我怎么做?

}
[/code]
请大家出个注意,我知道使用第一种方式可以直接调用这个参数,那么就不用构造器传递参数而给e留着。
可是如果我必须是下面这种事件注册方式,还必须要传参数,我怎么获得这个W3C中规定的e呢?

[b]问题补充:[/b]
感谢hax的回答,刚才我试过了,可行!!

  • 写回答

1条回答 默认 最新

  • iteye_19872 2008-08-01 15:50
    关注

    inline handler 中默认 event 就指向 event 对象。

    onclick="doSth(event)"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置