当多个对象需要处理同一请求时,可以将这些请求交给另一个对象统一处理
window.onload = function () {var aLis = document.getElementsByTagName("li");for (var i = 0; i < aLis.length; i++) {aLis[i].onclick = function(e) {var e = e || window.event;var target = e.target || e.srcElement;console.log(target.innerHTML);}}/* 上面写法存在的问题:1.需要每个li绑定不同的事件,会造成性能的损失和内存的占用2.在ul中,新添加的li会没有onclick事件*/// 使用事件委托,委托给ulvar oUl = document.querySelector('#uli');oUl.onclick = function(e) {var e = e || window.event;var target = e.target || e.srcElement;if(target.nodeName.toLowerCase() === 'li') {console.log(target.innerHTML);}}}
