Popover(弹出框)
Popover 组件可用于在另一内容之上显示某些内容。
使用 Popover
组件时需要了解的事项
Anchor 游乐场
使用单选按钮调整 anchorOrigin
和 transformOrigin
位置。您还可以将 anchorReference
设置为 anchorPosition
或 anchorEl
。当设置为 anchorPosition
时,组件将引用 anchorPosition
属性而不是 anchorEl
,您可以调整此属性来设置 popover 的位置。
<Popover
anchorOrigin={{
vertical: 'top',
horizontal: 'left',
}}
transformOrigin={{
vertical: 'top',
horizontal: 'left',
}}
>
The content of the Popover.
</Popover>
鼠标悬停互动
此演示展示了如何使用 Popover
组件和 mouseenter
及 mouseleave
事件来实现 popover 行为。
鼠标悬停显示 Popover。
虚拟元素
anchorEl
属性的值可以是对虚拟 DOM 元素的引用。您需要提供具有以下接口的对象
interface PopoverVirtualElement {
nodeType: 1;
getBoundingClientRect: () => DOMRect;
}
高亮文本的一部分以查看 popover
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam ipsum purus, bibendum sit amet vulputate eget, porta semper ligula. Donec bibendum vulputate erat, ac fringilla mi finibus nec. Donec ac dolor sed dolor porttitor blandit vel vel purus. Fusce vel malesuada ligula. Nam quis vehicula ante, eu finibus est. Proin ullamcorper fermentum orci, quis finibus massa. Nunc lobortis, massa ut rutrum ultrices, metus metus finibus ex, sit amet facilisis neque enim sed neque. Quisque accumsan metus vel maximus consequat. Suspendisse lacinia tellus a libero volutpat maximus.
有关虚拟元素属性的更多信息,请参阅以下资源
补充项目
对于更高级的用例,您或许可以利用
material-ui-popup-state
material-ui-popup-state
包可以在大多数情况下为您处理 popover 状态。