循环中设置的监听事件怎么传递参数

for(var m = 0; m < detialList.length; m++) {

  var itemDetial = document.createElement('div');

     itemDetial.onclick=function(){

    alert(detialList[m].data); 

  }

}

只能弹出m最大值时候的值

解决办法:“闭包”

for(var m = 0; m < detialList.length; m++) {

  var itemDetial = document.createElement('div');

        var paraTrans = function (data) {

   itemDetial.onclick=function(){

     alert(data); 

   }

   };
  paraTrans(detialList[m].data);

}
posted on 2018-01-16 14:13  诸葛亮了  阅读(237)  评论(0)    收藏  举报