事件的委派 指的是将事件统一绑定给元素的共同祖先元素,这样当后代元素上的时间被触发时,会一直冒泡到祖先元素,从而通过祖先的响应函数来处理事件。 事件委派是利用了冒泡,通过委派可以减少事件绑定的次数,提高程序的性能。 不理解的话看看下面这个小例子 代码如下(注释部分有对每行代码的解释):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>事件的委派</title>
</head>
<body>
<button id="btn01">点这里</button>
<ul id="ul">
<li><a href="javascript:;" class="link">超链接一</a></li>
<li><a href="javascript:;" class="link">超链接二</a></li>
<li><a href="javascript:;" class="link">超链接三</a></li>
</ul>
<script type="text/javascript">
var ul=document.getElementById("ul");
var btn01=document.getElementById("btn01");
btn01.onclick=function(){
var li=document.createElement("li");
li.innerHTML="<a href='javascript:;' class='link'>新建的超链接</a>";
ul.appendChild(li);
};
var a=document.getElementsByTagName("a");
ul.onclick=function(event){
event=event||window.event;
if(event.target.className=="link"){
alert("我是ul的响应函数~");
};
};
</script>
</body>
</html>
非常简单,自己动手试试看,便于理解。
|