
1、绑定在父元素上只需要绑定一次,节省性能。
2、子元素不需要每个人都绑定同一个事件。
3、如果后续添加新的子元素,由于事件委托,会自动接收父元素的事件监控。
实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | <!doctype html>
<html>
<head>
<style>
ul{
list-style: none;
display: flex;
}
ul li{
width: 50px;
height: 50px;
line-height: 50px;
text-align: center;
background: pink;
font-weight: bold;
border: 1px solid #eee;
}
ul li:hover{
cursor: pointer;
}
</style>
</head>
<body>
<div>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</div>
</body>
<script>
var ul = document.querySelector( "ul" );
var li = document.querySelectorAll( "li" );
ul.onclick = function (e){
var target = e.target || e.srcElement;
if (target.nodeName.toLowerCase() == 'li' ){
alert(target.innerHTML)
}
}
</script>
</body>
</html>
|
以上就是js事件委托的优点,希望对大家有所帮助。更多Javascript学习指路:Javascript