概述Visual Viewport API 提供可视视口的位置与尺寸(如 `width/height/scale/pageLeft/pageTop`),并在变化时触发 `geometrychange`。适用于在移动端软键盘弹出或缩放时,调整固定元素位置与滚动策略。示例if (window.visualViewport) { const vv = window.visualViewport const onChange = () => { document.documentElement.style.setProperty('--vv-bottom', (vv.height + vv.offsetTop) + 'px') } vv.addEventListener('geometrychange', onChange) onChange() } 工程建议与 VirtualKeyboard 协作:结合 `boundingRect` 与 `geometrychange` 共同处理输入布局。定位与滚动:固定底部工具栏根据 `vv.height/offsetTop` 调整;避免重复计算导致抖动。兼容:不支持时回退到 `resize` 与滚动监听;确保基本可用。参考与验证MDN VisualViewport 文档:https://developer.mozilla.org/docs/Web/API/Visual_Viewport_APIChrome 平台文档:https://developer.chrome.com/docs/web-platform/visual-viewport/

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
1.674037s