原生js 事件的委托

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原生js 事件的委托相关的知识,希望对你有一定的参考价值。

<!DOCTYPE html>
<html>
<head>
	<title>原生js事件委托</title>
	<meta charset="utf-8" />
</head>
<body>
	<ul>
		<li>我是原来的</li>
		<li>我是原来的</li>
		<li>我是原来的</li>
		<li>我是原来的</li>
	</ul>
	<button id="btn">添加一个li</button>
</body>
</html>
<script type="text/javascript">
	var ul=document.getElementsByTagName(‘ul‘)[0];
	var btn=document.getElementById(‘btn‘);
	ul.addEventListener("click",function(e){
		var evt=e||window.event;
		var target=evt.target;
		if(target&&target.nodeName=="LI"){
			target.innerHTML="我被点击了!"
		}
	},0)
	btn.onclick=function(){
		var li=document.createElement("li");
		li.innerHTML="我是新来的";
		ul.insertBefore(li,ul.firstChild)
	}

</script>

  好处是新添加的元素也会拥有委托的方法

以上是关于原生js 事件的委托的主要内容,如果未能解决你的问题,请参考以下文章

对于原生js中的事件委托解析

经典面试题分析——原生JS如何实现事件委托

经典面试题分析——原生JS如何实现事件委托

Vue---原生js委托事件

原生js 事件的委托

js事件代理(委托)