0
写了例如处理程序mouseenter/mouseleave
中的反应,并令我惊讶的是e.target返回子元素。为什么要在mouseenter/mouseleave中工作?
在js上创建了example,那里的一切都完美的工作,只有父母。 这个处理程序不必与子元素一起工作,也不会冒泡,为什么它会发生?
元器件代码
class MovieItem extends Component {
constructor(props) {
super(props);
this.state = {
popup: false
};
}
outItem = (e) => {
e.stopPropagation()
console.log(e.target)
e.target.style.opacity = 0
// this.setState({
// popup: true
// });
};
leaveItem = (e) => {
e.stopPropagation()
console.log(e.target)
e.target.style.opacity = 1
this.setState({
popup: false
});
};
render() {
return (<
div className = "movie-item"
id = {
this.props.id
}
onMouseEnter = {
(e) => this.outItem(e)
}
onMouseLeave = {
(e) => this.leaveItem(e)
} >
<
div className = "movie-item__data" >
<
div className = "movie-item__poster" >
<
img src = "http://lorempixel.com/140/205/"
alt = ""/>
<
/div> <
div className = "movie-item__title" > title < /div>
<
/div> <
/div>
);
}
谢谢,你知道它是如何停止? – Drop