TRo*_*esh 1 javascript css sass reactjs
我有一个圆形的 div,显示圆形的csscircle属性是从类中获取的。圆形 div 的颜色取自内联样式。这里使用了一个调用的函数Status(),它将返回十六进制颜色代码。圆圈根据我们传递给 Status 函数的状态呈现颜色。为了实现悬停效果,我向样式对象添加了 ':hover' 属性,但它不起作用。这是我尝试过的代码。关于如何实现这一目标有什么想法吗?我需要在鼠标悬停时向圆圈添加边框/发光。
<div
className="circle"
style={{
backgroundColor: Status('new'),
':hover': {
boxShadow: `0px 0px 4px 2px ${Status('complience')}`,
},
}}
/>
Run Code Online (Sandbox Code Playgroud)
尝试添加&之前:hover
这对于内联样式是不可能的,您可能需要使用onMouseEnter和onMouseLeaveprops 来获取悬停状态并使用它,例如:
class MyComponent extends React.Component {
state= {
hover: false,
}
handleMouseEnter = () => {
this.setState({ hover: true });
}
handleMouseLeave = () => {
this.setState({ hover: false });
}
render() {
const { hover } = this.state;
return(
<div
className="circle"
style={{
backgroundColor: Status('new'),
...(hover && { boxShadow: `0px 0px 4px 2px ${Status('complience')}`}),
}}
onMouseEnter={this.handleMouseEnter} // Or onMouseOver
onMouseLeave={this.handleMouseLeave}
/>
)
}
}
Run Code Online (Sandbox Code Playgroud)
备择方案 :
| 归档时间: |
|
| 查看次数: |
10895 次 |
| 最近记录: |