ES6单击按钮时显示div为none

时间:2017-11-14 11:15:15

标签: javascript ecmascript-6

我是ES6的新手,当点击一个内部按钮时,我试图显示没有div。

我尝试了这个,但它不起作用:

const hide = () => {
  const z = document.getElementById('button')
  const y = document.getElementById('block')
  z.onclick = () => {
    y.style.display='none'
  }
}
<div id="block">
  <button id="button" onClick="hide()">my button</button>
</div>

请帮忙吗?

2 个答案:

答案 0 :(得分:2)

您是第一次附加事件处理程序。在第二次之后它将工作并将再次附加事件处理程序。

您不需要使用内联事件处理程序,避免使用此类型的事件处理程序附件。您只需删除提供内容的hide功能部分即可。代码运行时,它将附加事件处理程序

const z = document.getElementById('button');
const y = document.getElementById('block');

z.onclick = () => {
    y.style.display = 'none';
};
<div id="block">
  <button id="button">my button</button>
</div>

答案 1 :(得分:1)

而不是隐藏div您的隐藏方法是为您的按钮分配新的onclick处理程序

简单

const hide = () => {
    document.getElementById('block').style.display='none'
  }