关于js中的事件委托小案例

需求:页面上有一个按钮,和一个空的ul,要求点击按钮,会给ul中动态添加li元素,然后,点击动态添加的元素,在控制台上输出,这是第几个元素

<ul>
        
</ul>
<button>点击增加</button>
    var ul = document.querySelector('ul');
    var btn = document.querySelector('button');
  //动态添加元素 btn.addEventListener(
'click',function(){ var li = document.createElement('li'); li.innerHTML='我是新添加的li元素'; ul.appendChild(li); }) ul.addEventListener('click',function(e){ var lis = document.querySelectorAll('li'); for (var i = 0; i < lis.length; i++) { lis[i].index=i } var tag = e.target;//获取当前点击的元素节点 if (tag.nodeName.toLowerCase()=='li') {//使用元素节点的nodeName属性获得元素的名称,并转换为小写,判断是不是我们想要的 console.log(tag.index);//如果是,就输出对应的索引值 } });
原文地址:https://www.cnblogs.com/songdongdong/p/6495564.html