通过javascript删除父节点(一种新方法)

时间:2017-06-03 04:34:05

标签: javascript

我的一个朋友进行了javascript测试,而且这个问题并没有让我感到孤独。我以为你们可能会有一个答案。 考虑一下这个简单的html

<div>
  <img src='whatever'>
  <button>x</button>
<div>
<div>
  <img src='whatever2'>
  <button>x</button>
<div>

我们希望点击按钮触发一个功能,不带任何参数来删除所点击按钮的父节点。

function deleteParent(){

}
你能提出一个想法吗?记住关键是函数不会得到参数

1 个答案:

答案 0 :(得分:2)

如评论中所示,您必须首先向按钮添加侦听器以侦听click事件,执行此事件时使用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>