Bootstrap 5 弹出框
弹出框
弹出框(Popover)组件类似于工具提示;它是一种弹出框,当用户点击元素时出现。不同之处在于弹出框可以包含更多内容。
如何创建弹出框
如需创建弹出框,请将 data-bs-toggle="popover"
属性添加到元素。
请使用 title
属性规定弹出框的标题文本,并使用 data-bs-content
属性规定在弹出框正文中显示的文本:
<button type="button" class="btn btn-primary" data-bs-toggle="popover" title="弹出框标题" data-bs-content="弹出框内的一些内容">Toggle popover</button>
注意:弹出框必须用 JavaScript 初始化才能工作。
以下代码将启用文档中的所有弹出框:
实例
<script> var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]')) var popoverList = popoverTriggerList.map(function (popoverTriggerEl) { return new bootstrap.Popover(popoverTriggerEl) }) </script>
定位弹出框
默认情况下,弹出框会出现在元素的右侧。
请使用 data-bs-placement
属性设置弹出框在元素顶部、底部、左侧或右侧的位置:
实例
<a href="#" title="Header" data-bs-toggle="popover" data-bs-placement="top" data-content="Content">Top</a> <a href="#" title="Header" data-bs-toggle="popover" data-bs-placement="bottom" data-content="Content">Bottom</a> <a href="#" title="Header" data-bs-toggle="popover" data-bs-placement="left" data-content="Content">Left</a> <a href="#" title="Header" data-bs-toggle="popover" data-bs-placement="right" data-content="Content">Right</a>
注意:如果没有足够的空间,placement 属性将不会按您的预期工作。例如:如果您在页面顶部(无预留空间)使用 top placement 属性,它将改为在元素下方或右侧(任何有空间的地方)显示弹出框。
关闭弹出框
默认情况下,再次单击元素时会关闭弹出窗口。但是,您可以使用 data-bs-trigger="focus"
属性,设置该属性可在元素外部单击时关闭弹出窗口:
实例
<a href="#" title="Dismissible popover" data-bs-toggle="popover" data-bs-trigger="focus" data-bs-content="单击文档中的任意位置可关闭此弹出窗口">点击我</a>
悬停弹出框
提示:如果您希望在将鼠标指针移动到元素上时显示弹出框,请使用值为 "hover"
的 data-bs-trigger
属性:
实例
<a href="#" title="Header" data-bs-toggle="popover" data-bs-trigger="hover" data-bs-content="弹出框文本">请在我上方悬停</a>