首页 > 解决方案 > window.innerHeight 在 iOS 11 中返回错误值

问题描述

迄今为止,我有一个在最新版本的 cordova (8) 和 cordova-ios (4.5.4) 上运行的 cordova iOS 应用程序。我最近开始考虑更新应用程序以使用WKWebView而不是默认使用UIWebView,但我发现在 iOS 11(在 iPad mini 上测试)中,webview 有时会报告错误的 innerHeight。

这是 index.html 中的相关代码:

<meta name="viewport" content="initial-scale=1, width=device-width, height=device-height, viewport-fit=cover">

<style type="text/css">
    html, body {
        height: 100%;
    }
</style>

这就是我试图读取属性的方式(在deviceready处理程序之后):

document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {
    var calcHeight = window.screen.height - window.innerHeight;
}

window.screen.height总是评估为 1024,这很好,但window.innerHeight有时会返回 1004(这是预期值),但有时会返回 460。

任何想法可能会发生什么?

提前致谢

标签: javascriptioscordovawkwebview

解决方案



推荐阅读