document.getElementById('joblist').addEventListener('click', function (ev) {
var target = ev.target || ev.srcElement;
if (target.nodeName.toLowerCase() == 'button') {
var e = document.getElementById(target.parentNode.id);
document.getElementById("joblist").removeChild(e);
}
});
二、jquery实现$ e! i! R. @+ l) S/ h/ ]) b
从 jQuery 1.7 开始,您应该使用on的方式,语法如下: ) D/ _9 e' C, H0 `
解释: $ B. l6 w+ ~8 b! _3 J( v0 R 这称为事件委托,其工作原理如下。该事件附加到staticAncestors应处理的元素的静态父级 ( )。每次在此元素或后代元素之一上触发事件时,都会触发此 jQuery 处理程序。然后处理程序检查触发事件的元素是否与您的选择器 ( dynamicChild)匹配。当匹配时,您的自定义处理程序函数将被执行。1 `0 m) M% N! Q4 M
在此之前,推荐的方法是使用live():1 r/ U7 ]3 M! E. i% Q( B) Z% a
$(document).on('mouseover mouseout', '.dosomething', function(){
// what you want to happen when mouseover and mouseout
// occurs on elements that match '.dosomething'
});
事件绑定时存在的任何父级都可以。例如 ) E# a0 u& `8 u8 V u- c' E: t$ P+ o