例如:有一个table,table里面有好多td,点击td让它的背景色变成黑色
一般写法:
var tds=document.getElementsByTagName("td");
var i=0;
whhile(i<tds.length){
tds[i].οnclick=function(){
this.style.background="black";
}
i++;
}
这样占内存。
事件委托:在table上绑定事件,这样只绑定一次就行,效率提高
document.getElementsByTagName("table")[0].οnclick=function(ev){
ev.target.style.background="black";
}
例如平时常用的ul li的事件委托
<ul>
<li>1111111</li>
<li>2222222</li>
<li>3333333</li>
<li>4444444</li>
<li>5555555</li>
</ul>
<script> document.getElementsByTagName("ul")[0].onclick = function (ev) {
alert(ev.target.innerHTML);
}
</script>