addEventListener事件委托快速获取点击元素的索引
通常事件委托获取点击元素的索引需要进行循环比对来得到,这样比较麻烦,也比较耗费性能,但是通过数组原型上的indexOf可以大大提高该操作的性能,示例如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <div> <ul> <li>1</li> <li>2</li> <li>3</li> </ul> </div> var oUl=document.getElementsByTagName( 'ul' )[0], oLi=oUl.getElementsByTagName( 'li' ); oUl.addEventListener( 'click' , function (ev){ var e=ev||window.event, index=Array.prototype.indexOf.call(oLi,e.target); console.log(index) }, false ) |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步