diff --git a/src/components/PageHeader.jsx b/src/components/PageHeader.jsx
index 4cf240b..25963d9 100644
--- a/src/components/PageHeader.jsx
+++ b/src/components/PageHeader.jsx
@@ -63,10 +63,16 @@ export default function PageHeader() {
};
}, []);
- // 点击面板外部 → 关闭音量面板
+ // 点击音量容器(按钮+面板)外部 → 关闭面板;
+ // 用「目标是否在容器内」判断,避免面板内滑块交互(pointerdown)误关弹窗
+ const volWrapRef = useRef(null);
useEffect(() => {
if (!volOpen) return undefined;
- const close = () => setVolOpen(false);
+ const close = (e) => {
+ if (volWrapRef.current && !volWrapRef.current.contains(e.target)) {
+ setVolOpen(false);
+ }
+ };
document.addEventListener('pointerdown', close);
return () => document.removeEventListener('pointerdown', close);
}, [volOpen]);
@@ -154,7 +160,7 @@ export default function PageHeader() {
{/* 媒体轮播页:页眉内嵌播放控制 */}
{location.pathname === '/screen' &&