Popover 弹出框
使用弹出框组件,您可在另一个元素之上显示一些内容。
使用弹出框组件时,你需要了解的事项:
<Button aria-describedby={id} variant="contained" onClick={handleClick}>
Open Popover
</Button>
<Popover
id={id}
open={open}
anchorEl={anchorEl}
onClose={handleClose}
anchorOrigin={{
vertical: 'bottom',
horizontal: 'left',
}}
>
<Typography sx={{ p: 2 }}>The content of the Popover.</Typography>
</Popover>锚点(Anchor)测试
你可以使用单选按钮(radio buttons)调整 anchorOrigin 和 transformOrigin 的位置。 您还可以将 anchorReference 设置为 anchorPosition 或 anchorEl。 当设置为 anchorPosition 时,该组件将指向 anchorPosition 属性,用其可以调整设置弹出框的位置,而不是指向anchorEl。
<Popover
anchorOrigin={{
vertical: 'top',
horizontal: 'left',
}}
transformOrigin={{
vertical: 'top',
horizontal: 'left',
}}
>
The content of the Popover.
</Popover>鼠标悬停的交互事件
This demo demonstrates how to use the Popover component and the mouseover event to achieve popover behavior.
Hover with a Popover.
补充项目
For more advanced use cases, you might be able to take advantage of:
PopupState helper
在大多数情况下,一个第三方包 material-ui-popup-state 可以为你管理 popper 的状态。