为了账号安全,请及时绑定邮箱和手机立即绑定

子 div 上的 OnClick 不应该为特定子触发父 div 的 onClick 方法

子 div 上的 OnClick 不应该为特定子触发父 div 的 onClick 方法

PIPIONE 2023-06-15 10:06:59
考虑以下 React 组件export default function App() {  return (    <div className="App" onClick={() => console.log("on app div")}>      <div className="first" onClick={() => console.log("first div")}>        first      </div>      <div className="second" onClick={() => console.log("second div")}>        second      </div>      <div className="third">third</div>    </div>  );}因此,单击子 div 当前将触发父 div 和子 div 的 onClick 方法。但是对于第一个孩子,我只想触发子 onClick 方法。有没有办法做到这一点?我试过给子 div 一个更高的 z-index 值,但它仍然触发两个 onClicks,这是我试过的 css.App {  font-family: sans-serif;  text-align: center;  position: relative;}.first,.second,.third {  position: absolute;  width: 100px;  line-height: 100px;  text-align: center;}.first {  background: lightblue;  position: absolute;  z-index: 10;}.second {  background: lightcoral;  position: absolute;  left: 200px;}.third {  background: lawngreen;  position: absolute;  left: 100px;}谁能告诉我我尝试过的 css 或任何其他方法是否有问题以实现此目的。
查看完整描述

1 回答

?
慕雪6442864

TA贡献1812条经验 获得超5个赞

你应该使用 event.stopPropagation()


<div className="second" onClick={(event) =>

    event.stopPropagation()

    console.log("second div")

 }>

    second

</div>


查看完整回答
反对 回复 2023-06-15
  • 1 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信