我需要计算ios8上的可见屏幕高度。 意思是当键盘打开时,计算屏幕高度减去键盘高度。减去状态栏等
帮忙?
也许
document.documentElement.clientHeight
已更改。
我在iOS 16.1.1上测试过。
什么不起作用
打开软键盘时不调整视口大小:
<meta name="viewport" content="width=device-width, initial-scale=1.0, interactive-widget=resizes-content">
window.innerWidth
和 window.innerHeight
不会改变
document.documentElement.clientWidth
和 document.documentElement.clientHeight
不会改变
addEventListener("resize", (event) => {})
打开键盘时不触发
打开键盘时以下 CSS 不适配:
宽度:100svw; 高度:100svh;
什么有效
window.visualViewport.width
和 window.visualViewport.height
会发生变化。显示以下捕获:
键盘打开时,
window.visualViewport.height
在浏览器中显示可见高度: