纯JavaScript:当元素';已单击的子对象
我有: 它可能与上下文无关,因此下面是指向完整待办事项应用程序的链接: 我不确定纯JavaScript:当元素';已单击的子对象,javascript,html,css,dom-events,Javascript,Html,Css,Dom Events,我有: 它可能与上下文无关,因此下面是指向完整待办事项应用程序的链接: 我不确定 span.addEventListener("click", this.parentElement.parentElement.removeChild(this.parentElement); 是最好、最有效的解决方案这是事件委派的一个很好的用例。由于click事件会将DOM冒泡到父节点,因此可以侦听根祖先上的click事件,然后检查单击的元素是否与目标类型匹配 var todolist=document.g
span.addEventListener("click", this.parentElement.parentElement.removeChild(this.parentElement);
是最好、最有效的解决方案这是事件委派的一个很好的用例。由于click事件会将DOM冒泡到父节点,因此可以侦听根祖先上的click事件,然后检查单击的元素是否与目标类型匹配
var todolist=document.getElementById('todolist');
todolist.addEventListener('click',函数(e){
if(例如target.matches('.remove')){
todolist.removeChild(e.target.parentNode);
}
});代码>
。删除{
颜色:821818;
显示:内联块;
填充:3x10px;
边框:1px实心#d84c4c;
边界半径:2px;
光标:指针;
位置:绝对位置;
右:0px;
顶部:0px;
身高:100%;
框大小:边框框;
背景:#f1bbc0;
字号:700;
字体大小:25px;
}
#托多利斯特{
列表样式:无;
}
#托多利斯特李{
显示:块;
位置:相对位置;
填充:8px 6px;
宽度:300px;
利润率:5px0px;
边界半径:2px;
盒影:0 3px 4px 0 rgba(0,0,0,0.14),0 1px 8px 0 rgba(0,0,0,0.12),0 3px 3px-2px rgba(0,0,0,0.4);
}
1次&次李>
2次&次李>
3次&次李>
4次&次李>
5次&次李>
6次&次李>
7次&次李>
8次&次李>
您需要传递回调函数,而不是调用调用方法的函数,并且它返回的内容将分配给事件侦听器。
span.addEventListener("click", this.parentElement.parentElement.removeChild(this.parentElement);
this.parentElement.parentElement.removeChild(this.parentElement);