给addEventListener调用函数加参数方法

一、用setAttribute()为元素增添属性,把要传递的参数赋给属性值;然后在所调用函数中加事件参数,如下:

deleteTaskk = document.createElement("a");
ii="3";
color="red"
deleteTaskk.setAttribute("moto", ii);
deleteTaskk.setAttribute("color", color);
deleteTaskk.addEventListener("click", deleteTaskCookie, false);
document.appendChild(deleteTaskk);

function deleteTaskCookie(e){//e是事件对象,使用e.target既定义对象,又可以得到触发本事件的元素。
mycase=e.target
ii=mycase.getAttribute("moto");
color=mycase.getAttribute("color");

.....................


}
二、直接让addEventListener调用带参数的函数,然后在所调用函数中返回匿名函数。如下:

deleteTaskk = document.createElement("a");
ii="3";
color="red"
deleteTaskk.addEventListener("click", deleteTaskCookie(ii,color), false);
document.appendChild(deleteTaskk);

function deleteTaskCookie(i,colo){
  return function(){
XXXXX(i)
XXXXXX(colo)
.....................

  }
}
转载出处:http://g.mozest.com/thread-31048-1-1

你可能感兴趣的:(javascript)