JavaScript代码里面为onclick赋方法! onclick=test;如果test需要传参如何解决呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 var a = 123; ***.onclick = function(){ test(a); } onclick=test;你这样赋值的话,test函数里面this指向window。外面window下随便定义的变量都可以访问到。 能用就行了啊。你还想要怎么样。如果你想要添加多个事件处理程序,那就用 addEventlistenter和 attachEvent。onclick = function(){test(a)}这样你认为不方便。其实你只是受了弱类型javascript语法灵活的影响onclick其实是一个对象的方法。你可以在外面对他进行赋值,而不用管他是什么类型(函数或者其它的变量,都不用管)而在类似c#这样的强类型的语言中,这些东西你必须得注意。onclick是一个事件,他所接受的委托就必须遵循一定的签名(也就是参数、返回值之类的必须一致),是一个参数就是一个参数,是两个就是两个。你可以把他看成是一个接口所以像你提的这个要求,根本不必要去寻找什么写法,因为那样已经是标准的写法了。你用别的写法反而会让别人难以理解你的代码详细参考:http://www.chhblog.com/Web/ArticleView.aspx?ArticleID=172 js的原型继承问题,有些不解... 如何计算一个元素距离body顶部的距离 什么代码能够实现弹出“编辑相片 ”窗口限定时间内自动关闭! 关于鼠标经过,图片变化的问题 在一个元素点击后不执行获得焦点元素的失去焦点事件 怎么避免刷新调用onunload? 如何使用js删除上一级页面生成的cookie 菜问题,一定有大哥知道! 请问checkbox为什么不能取到length呢? 求救!100分,onBlur 控制焦点的问题!! 一个焦点图(就是网站图片轮换的),怎么把鼠标事件由点击改为滑过。(内附原代码) 救大侠们帮助!!
var a = 123;
***.onclick = function(){
test(a);
}
你这样赋值的话,test函数里面this指向window。
外面window下随便定义的变量都可以访问到。
如果你想要添加多个事件处理程序,那就用 addEventlistenter和 attachEvent。
onclick = function(){test(a)}
这样你认为不方便。其实你只是受了弱类型javascript语法灵活的影响
onclick其实是一个对象的方法。你可以在外面对他进行赋值,而不用管他是什么类型(函数或者其它的变量,都不用管)
而在类似c#这样的强类型的语言中,这些东西你必须得注意。onclick是一个事件,他所接受的委托就必须遵循一定的签名(也就是参数、返回值之类的必须一致),是一个参数就是一个参数,是两个就是两个。你可以把他看成是一个接口
所以像你提的这个要求,根本不必要去寻找什么写法,因为那样已经是标准的写法了。你用别的写法反而会让别人难以理解你的代码
详细参考:http://www.chhblog.com/Web/ArticleView.aspx?ArticleID=172