html代码如下:
<ul id="lll"> <li>1</li> <li>2</li> <li>3</li> <li>4</li> </ul>js实现方法: 1.传统方法
var ul = document.getElementById("lll"); lis = ul.getElementsByTagName("li"); for(var i=0; i<lis.length; i++){ lis[i].onclick = function(){ alert(this.innerHTML); } }2.(事件委托)事件代理
var ul = document.getElementById("lll"); ul.addEventListener("click", function(event){ event = event || window.event; var target = event.target || event.srcElement; alert(target.innerHTML); }, false);3.ES6——let声明 注:let声明的变量具有块级作用域
var ul = document.getElementById("lll"); lis = ul.getElementsByTagName("li"); for(let i=0; i<lis.length; i++){ lis[i].onclick = function(){ alert(this.innerHTML); } }4.jQuery——delegate或on (都有事件代理的特性)
$("#lll").delegate("li", "click", function(){ alert($(this).html); }); $("#lll").on("click", "li", function(){ alert($(this).html); });