Javascript onClick仅在<;i>-要素
我有一个div覆盖了整页,并绑定了一个onClick。它有position:absolute并记录页面上的所有点击。如果e.target没有持有某个节点,我不会对其执行任何操作 这似乎阻止了其他div上的其他onClick事件,我想这是合乎逻辑的。我不明白的是,较小div中的I元素仍然有onClick工作 为什么onClick在i元素上也没有被阻止 相关问题:我能让所有的div都可以点击吗?所以onClick函数在较大的div和它下面的较小div上都启动 编辑:它真的没有比我展示的更多的东西了。我会尽量把它弄清楚一点,但基本上就是这样。可以加上 不知道有什么在线工具可以在反应时提供一个有效的例子 反应:Javascript onClick仅在<;i>-要素,javascript,reactjs,Javascript,Reactjs,我有一个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%;
}