首页 > 解决方案 > 如何让函数识别我点击的 div?

问题描述

我为我的 100div 网格中的每个 div 添加了一个事件侦听器。在函数中,我应该将单击的正方形作为参数传递。问题是 click() 函数只能识别最后一个 div(数字 99)。

function createBoard(){

 for(var i=0;i<width*height;i++){
 
  var square=document.createElement('div');
   grid.append(square);
   square.setAttribute('id',i);
   square.innerHTML=boardArray[i];
   squares.push(square);
   
   
    squares[i].addEventListener('click', function(e) {
    click(square)
  })

 }//end for 

                   }//end func

createBoard();




function click(square){
var id=square.id;
console.log(id) //displays 99th 

}

标签: javascripthtmladdeventlistener

解决方案


i如果您想要的只是放在 div 上的 id,为什么不传递给函数呢?


推荐阅读