委托事件(jQuery)
<div class="content">
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</div>
javascript实现委托事件
实现原理
event,target 事件属性可返回事件的目标节点(触发该事件的节点),如生成事件的元素、文档或窗口。
知识点
node.nodename
nodeName 属性指定节点的节点名称。
如果节点是元素节点,则 nodeName 属性返回标签名。
如果节点是属性节点,则 nodeName 属性返回属性的名称。
对于其他节点类型,nodeName 属性返回不同节点类型的不同名称。
document.getElementsByClassName('content')[0].addEventListener('click',function (event) { if (event.target.nodename='li'){
console.log(event.target);
alert('被点了');
}
})
jquery实现委托事件
on方法实现委托
$('.content').on('click','li',function () {
console.log(event.target);
alert('被点了');
});
delegate方法
$('.content').delegate('li','click',function () {
console.log(event.target);
alert('被点了');
})
heroes never die!

浙公网安备 33010602011771号