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

Posted Ethan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于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);//如果是,就输出对应的索引值 } });

 

以上是关于关于js中的事件委托小案例的主要内容,如果未能解决你的问题,请参考以下文章

js学习总结----事件委托和事件代理

Jquery的普通事件和on的委托事件小案例

js事件委托-事件对象以及相关案例

关于js模拟c#的Delegate(委托)实现

JS中的事件(对象,冒泡,委托,绑定)

原生js如何绑定a连接点击事件?