如果dom节点是动态添加进页面,想在节点绑定事件,传统的做法就是遍历节点,但会出现问题,也肯能有其他的办法,突然想到 可以依据事件冒泡,这样就不惧页面后添加节点而不响应事件的问题。比较结实。示例代码如下
<ul id="tit"> <li>1a</li> <li>2a</li> <li>3a</li> <li>4a</li> <li>5a</li> <li>6a</li> <li>7a</li> <li>8a</li> <li>9a</li> <li>10a</li> </ul>
var tit = document.getElementById("tit"); tit.onclick = function(e){ var e = e || window.event; var tar = e.target || e.srcElement; if(tar.nodeName.toLowerCase() === 'li'){ tar.style.background = 'green'; } } var li = document.createElement('li'); li.innerHTML = "哈哈哈哈"; tit.appendChild(li);
这个主要是没有jquery 的场景 jquery可以用on方法