JS闭包机制实现为DOM元素循环添加事件

Posted Chien

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS闭包机制实现为DOM元素循环添加事件相关的知识,希望对你有一定的参考价值。

html代码:

<button type=‘button‘ class=‘btn‘ id=‘1‘>按钮1</button>
<button type=‘button‘ class=‘btn‘ id=‘2‘>按钮1</button>
<button type=‘button‘ class=‘btn‘ id=‘3‘>按钮1</button>
<button type=‘button‘ class=‘btn‘ id=‘4‘>按钮1</button>

JS代码:

var btn = document.querySelectorAll(‘.btn‘);

for(var i =0; i<btn.length; i++)
{
      ((i)=>{
              btn[i].onclick = ()=>{
                       aleter(‘我是按钮‘+btn[i].getAttribute(‘id‘));
              };
      })(i);
}

 

以上是关于JS闭包机制实现为DOM元素循环添加事件的主要内容,如果未能解决你的问题,请参考以下文章

js的事件循环(Eventloop) 机制

DOM事件机制

JS闭包导致循环给按钮添加事件时总是执行最后一个

JS事件循环机制

深入理解js Dom事件机制——添加事件处理程序

理解JS的三座大山