[英]Remove highlight on mouse leave in MUI Autocomplete
使用Autocomplete
並將鼠標懸停在選項列表上,然后將鼠標移出它會留下最新的選項,即鼠標懸停在上面的選項,仍然突出顯示。
當鼠標指針完全位於列表之外時,刪除突出顯示的最佳方法是什么?
您可以添加mouseenter
和mouseleave
處理程序以了解鼠標何時位於Listbox
,如果鼠標位於Listbox
並且選項處於焦點,則覆蓋背景。 請注意,雙 & 號對於增加 CSS 特異性並將您的樣式置於 MUI 之上是必要的:
const [mouseInListBox, setMouseInListBox] = React.useState(false);
return (
<Autocomplete
open
options={top100Films}
ListboxProps={{
onMouseEnter: () => setMouseInListBox(true),
onMouseLeave: () => setMouseInListBox(false),
sx: {
'&& li.Mui-focused': {
bgcolor: !mouseInListBox ? 'white' : undefined,
},
},
}}
renderInput={(params) => <TextField {...params} label="Movie" />}
/>
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.