Javascript Onclick in循环解决方案始终返回鼠标事件
我需要在循环中添加onclick事件,因此我搜索并发现: 但是,它的问题是它总是返回鼠标事件。除了我自己的函数外,我做了几乎完全相同的事情,但它只返回一个鼠标事件。我不知道为什么,对我来说也没有任何意义。代码如下:Javascript Onclick in循环解决方案始终返回鼠标事件,javascript,arrays,loops,scope,onclick,Javascript,Arrays,Loops,Scope,Onclick,我需要在循环中添加onclick事件,因此我搜索并发现: 但是,它的问题是它总是返回鼠标事件。除了我自己的函数外,我做了几乎完全相同的事情,但它只返回一个鼠标事件。我不知道为什么,对我来说也没有任何意义。代码如下: var a=m.getElementsByTagName('topic'); for(var b=0,c=a.length;b<c;b++) a[b].onclick=function(a) { return function(a) { goToMB(a
var a=m.getElementsByTagName('topic');
for(var b=0,c=a.length;b<c;b++) a[b].onclick=function(a) {
return function(a) {
goToMB(a);
};
}(a[b].getAttribute('topicid'));
试试这个:
var a = m.getElementsByTagName('topic');
for(var b = 0, c = a.length; b < c; b++) {
a[b].onclick = function(a) {
return function() { goToMB(a); }
}(a[b].getAttribute('topicid'));
}
我发现在返回函数中添加一个参数是导致问题的原因