鍍金池/ 問答/Linux  HTML/ 點(diǎn)擊overlap層的按鈕,為什么會(huì)把原始層已打開的 menu button菜單

點(diǎn)擊overlap層的按鈕,為什么會(huì)把原始層已打開的 menu button菜單收縮?

如果沒有overlap層,點(diǎn)擊 menu button下拉菜單一下,會(huì)將子菜單展開, 再次點(diǎn)擊頁(yè)面任意位置,menu button的子菜單會(huì)縮回去,這個(gè)很好理解。
但當(dāng)我建了個(gè)overlap層,并在上面建了一個(gè)普通button,為什么我點(diǎn)擊后, 原始頁(yè)面的 menu button下拉菜單也會(huì)縮回去呢? 這個(gè)正常嗎?
我的z-index設(shè)置得沒問題,不然遮罩層就無法正確顯示

回答
編輯回答
骨殘心

寫一個(gè)閉包變量?jī)?chǔ)存menu狀態(tài)

 let handler (function (){
  var isSlidedown = false
  return {
          isSlidedown = ! isSlidedown

//業(yè)務(wù)寫這里

  }
})();

btn.addEventListener('click', handler)
2017年3月30日 10:46
編輯回答
冷眸

原始的menu button的子菜單縮回去是怎么實(shí)現(xiàn)的?
點(diǎn)擊頁(yè)面任意位置會(huì)收回去,那你overlap層上的東西也屬于任意位置,所以可能是冒泡的原因。

2018年2月6日 12:18
編輯回答
九年囚

可能是點(diǎn)擊穿透,你在button上綁定點(diǎn)擊事件
觸發(fā)后event.preventDefault()

2018年4月14日 12:30
編輯回答
毀了心

確認(rèn)了下, 這個(gè)現(xiàn)象是正常的。 overlap層雖然不能 選/操作 原始層的對(duì)象,但點(diǎn)擊overlap的按鈕就會(huì)像原始層的按鈕一樣,會(huì)讓menubutton縮回去。 謝謝各位的回復(fù)。

2017年2月17日 02:56