javascript事件中的参数传递

找了半天才找到了一种方式 ,

1>用对象的方式来传

var newopen = function(id,level)
{
  
return function()
  {
    opentree(id,level);
//该函数为外部定义的一个执行函数;
  }
}
x.attachEvent(
"onclick",newopen(id,parseInt(level)+1));
y.attachEvent("onclick",newopen(id,parseInt(level)+2));

 

2> 后来,  我将这种方式用于事件中, 却没有效果, 因为事件默认会将系统参数放到第一个参数里

例如:

obj.attachEvent("onkeyup",new newopen(event,parameter));

var newopen
=function(e,parameter)
{
//这里是得不到e的值的
}

 正象上面说的一样, 那样e的值是得不到的, 这里也顺便提一下, 这样的做法用在事件中是不好的, 因为是new的关系

也就是说他会在排定事件的时候就调用一次, 在一般逻辑下是用于事件是不好的.

这时可以变一下,

obj.attachEvent("onkeyup",function(event){newopen(event,parameter));

var newopen
=function(e,parameter)
{
//这里是可以到e的值的
}


posted @   connoryan  阅读(1074)  评论(1编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示