事件代理
事件代理,通俗来讲,就是把一个元素响应事件(click
、keydown
......)的函数委托到另一个元素
应用场景一般都是在有一个列表之中有大量的列表项,需要在点击列表项的时候响应一个事件
这时候就可以事件委托,把点击事件绑定在父级元素ul
上面,然后执行事件的时候再去匹配目标元素
// 给父层元素绑定事件 document.getElementById('list').addEventListener('click', function (e) {// 兼容性处理var event = e || window.event;//老版浏览器var target = event.target || event.srcElement;//老版浏览器// 判断是否匹配目标元素if (target.nodeName.toLocaleLowerCase === 'li') {console.log('the content is: ', target.innerHTML);} });