Javascript onClick仅在<;i>-要素

Javascript onClick仅在<;i>-要素,javascript,reactjs,Javascript,Reactjs,我有一个div覆盖了整页,并绑定了一个onClick。它有position:absolute并记录页面上的所有点击。如果e.target没有持有某个节点,我不会对其执行任何操作 这似乎阻止了其他div上的其他onClick事件,我想这是合乎逻辑的。我不明白的是,较小div中的I元素仍然有onClick工作 为什么onClick在i元素上也没有被阻止 相关问题:我能让所有的div都可以点击吗?所以onClick函数在较大的div和它下面的较小div上都启动 编辑:它真的没有比我展示的更多的东西了。

我有一个div覆盖了整页,并绑定了一个onClick。它有position:absolute并记录页面上的所有点击。如果e.target没有持有某个节点,我不会对其执行任何操作

这似乎阻止了其他div上的其他onClick事件,我想这是合乎逻辑的。我不明白的是,较小div中的I元素仍然有onClick工作

为什么onClick在i元素上也没有被阻止

相关问题:我能让所有的div都可以点击吗?所以onClick函数在较大的div和它下面的较小div上都启动

编辑:它真的没有比我展示的更多的东西了。我会尽量把它弄清楚一点,但基本上就是这样。可以加上 不知道有什么在线工具可以在反应时提供一个有效的例子

反应:

checkForClick(e) {
 const node = ReactDOM.findDOMNode(this.someNode);
 if (node && !e.target.contains(node)) {
  this.setState({something: false});
 }
}


render()  {
 return (
  <div className='click-trigger' onClick={(e) => this._checkForClick(e)}></div>
   <div onClick={this._otherFunction}>
    // This content doesn't fire _otherFunction
    Content
    // The <i> fires _otherFunction
    <i className='fas fa-circle' />
  </div>
 )
}

你需要举个更好的例子,这很难解释。如果你有一个div覆盖了所有内容,那么不管怎样,它都不会让你点击下方。我想他的意思是div正在包装所有内容,但是是的,设置一个工作示例。你的代码应该可以工作。。。我在这里测试了类似的代码我会继续调试。。。无法复制该问题。在这个例子中,“图标”应该是可点击的:不过,我非常感谢关于如何在我的例子中同时使用here和there函数的建议。(当然,只有在单击较小的div时)您需要给出一个更好的示例,这很难解释。如果你有一个div覆盖了所有内容,那么不管怎样,它都不会让你点击下方。我想他的意思是div正在包装所有内容,但是是的,设置一个工作示例。你的代码应该可以工作。。。我在这里测试了类似的代码我会继续调试。。。无法复制该问题。在这个例子中,“图标”应该是可点击的:不过,我非常感谢关于如何在我的例子中同时使用here和there函数的建议。(当然,只有在单击较小的div时才会出现)
.click-trigger {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}