Javascript 将事件和参数传递给另一个函数
为了将事件信息传递给change函数,我必须从事件侦听器调用change函数,而不带括号Javascript 将事件和参数传递给另一个函数,javascript,Javascript,为了将事件信息传递给change函数,我必须从事件侦听器调用change函数,而不带括号 var boxes = document.getElementsByClassName('boxes'); for(var i = 0; i < boxes.length; i++){ boxes[i].addEventListener('click', change, false); } function change(e){ e.target.style.border = '1px s
var boxes = document.getElementsByClassName('boxes');
for(var i = 0; i < boxes.length; i++){
boxes[i].addEventListener('click', change, false);
}
function change(e){
e.target.style.border = '1px solid red';
}
var-box=document.getElementsByClassName('box');
对于(变量i=0;i
当我想在传递事件的同时传递一个参数时,问题就来了。似乎在添加参数时,事件失败
我如何能够包括这样的内容,即传递事件以更改边框,但也能够将参数传递到函数中
var boxes = document.getElementsByClassName('boxes');
for(var i = 0; i < boxes.length; i++){
boxes[i].addEventListener('click', change(10, 20), false);
}
function change(e, a, b){
e.target.style.border = '1px solid red';
console.log(a * b);
}
var-box=document.getElementsByClassName('box');
对于(变量i=0;i
任何帮助都会很好 向其传递一个匿名函数:
boxes[i].addEventListener('click', function ( e ) { change(e, 10, 20) }, false);
现在将其添加到单击事件中
boxes[i].addEventListener('click', changeFn, false);
在这种情况下,删除事件侦听器很简单
boxes[i].removeEventListener('click', changeFn, false);
@Paulpro所说的与您想要的最接近,您不能创建具有未知参数的委托。在我的案例中,我尝试了一天,将参数发送到ajax成功函数。
boxes[i].removeEventListener('click', changeFn, false);