我的一个朋友进行了JavaScript测试,并且有一个问题并不让我一个人。我以为你们可能会有答案。考虑这个简单的html
<div>
<img src='whatever'>
<button>x</button>
<div>
<div>
<img src='whatever2'>
<button>x</button>
<div>
我们希望单击按钮触发函数,该函数不需要参数才能删除单击按钮的父节点。
function deleteParent(){
}
您能提出一个主意吗?请记住,关键是该函数将无法获得参数
如注释中所示,您必须首先将侦听器添加到按钮中以收听点击事件,当执行此事件时,请删除使用this.parentNode.remove();
var buttons = document.querySelectorAll('button');
buttons.forEach(function(elem){
elem.addEventListener("click",function(){
this.parentNode.remove();
});
});
<div>
<img src=''>
<button>x</button>
</div>
<div>
<img src=''>
<button>x</button>
</div>