鉴于以下内容:
render() {
const onMouseOver = (event) => {
this.setState({ isHovering: true });
};
const onMouseOut = (event) => {
this.setState({ isHovering: false });
};
const open = this.state.isHovering ? true : false;
return (
<Nav className={styles.TopNav} bsStyle="pills" activeKey={1}>
<NavDropdown
className={dropDownClasses}
eventKey={1}
open={open}
title="Cards"
id="nav-dropdown"
onMouseEnter={onMouseOver}
onMouseOut={onMouseOut}>
<MenuItem eventKey="1.1">Action</MenuItem>
<MenuItem eventKey="1.2">Another action</MenuItem>
</NavDropdown>
<NavItem className={styles.navLink} eventKey={2}>Blog</NavItem>
</Nav>
);
Run Code Online (Sandbox Code Playgroud)
当鼠标悬停在NavDropdown的子节点上时,如何防止onMouseOut触发.
我可以在onMouseOut中检测我是否超过了孩子吗?
Fel*_*ing 26
这不是React特有的.mouseover和mouseout事件冒泡,因此处理程序也会触发元素的子元素.mouseenter并mouseleave没有泡沫.
所以你应该听mouseleave.
| 归档时间: |
|
| 查看次数: |
4485 次 |
| 最近记录: |