浮层
popover
computePopoverLayout 纯函数选侧(prefer → 翻对侧 → 取大侧);openPopover 负责 portal、跟随重算与外点/Esc 关闭。
示例
<div class="demo-row">
<button class="btn" id="popover-demo-trigger">筛选 ▾</button>
</div>
<div class="popover" id="popover-demo-panel" hidden>
<div class="form-field">
<label class="form-label" for="popover-demo-input">包含关键词</label>
<input class="form-input" id="popover-demo-input" placeholder="例如:overlay" />
</div>
<div class="demo-row" style="margin-top:10px">
<button class="btn btn-sm btn-primary" id="popover-demo-apply">应用</button>
</div>
</div> 安装
bun add @icen.ai/ui
import '@icen.ai/ui/components/popover.css'; 用法
import { openPopover, closePopover, computePopoverLayout } from '@icen.ai/ui/behaviors/popover';
openPopover(panel, { anchor: trigger, side: 'bottom', align: 'start' });
// panel 移入 body 定位;resize / 捕获 scroll 重算;外点 / Esc 关闭并还原