事件代理的使用(欢迎指出不足)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>事件代理</title>
<style type="text/css">
*{
margin: 0px;
padding: 0px;
list-style: none;
}
.box{
padding: 20px;
background-color: #CCCCCC;
width: 200px;
margin: 100px auto;
}
</style>
</head>
<body>
<div class="box">
<ul id='list'>
<li>1111111111</li>
<li>2222222222</li>
<li>3333333333</li>
<li>4444444444</li>
<li>5555555555</li>
</ul>
</div>
<script type="text/javascript">
//需求:给每一个li元素添加click事件监听器
//方案:使用事件代理,给父容器添加事件监听,然后使用e.target判断是什么子元素触发的事件
window.onload=function(){
var list=document.getElementById('list');
list.addEventListener('click',function(event){
var e=event||window.event;
if (e.target&&e.target.nodeName==='LI') {
var item=e.target;
console.log(item.innerText);
} else{
console.log('不是li元素触发的');
}
},false)
}
</script>
</body>
</html>
点击查看更多内容
2人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦