我现在有一个需求,既在触发一个点击事件后,既能得到事件源对象(event),又能得到传递过去的参数,前提是不用匿名函数。
例:
var a = 10; //该a不是全局变量,此问题也是在不涉及全局变量的前提下如何实现;
object.onclick = method;
function method(event){
//在该函数中,应该有两个参数,但是我只知道如何得到事件源(event);
//如何即能得到event,又能得到上面的参数a呢?
}
麻烦各位大师给出个解决方案,感激。。。。。。
最简单的办法 把数据存储到那个标签上的attribute上,然后随后读标签 查那个属性
如果jquery可以考虑data()
event是js内置对象,应该不需要写在第一个参数里面
event.srcElement可以取到dom元素
var a = 10; //该a不是全局变量,此问题也是在不涉及全局变量的前提下如何实现;
object.onclick = method(a);
function method(aIn){
alert(aIn);
alert(event.srcElement);
}
楼上正解,我说个我知道的方法。
var a = 10;
object.onclick = method;
m.prototype.a = a;
直接把a写到method的prototype上,用的时候取就行了。和attribute如出一辙。