javascript - UIWebView 不正确的内容高度

标签 javascript ios iphone uiwebview

我正在尝试调整 UIWebView 的大小,使其适合加载页面的全部内容。为此,我获取了 webview 的 ScrollView 的内容高度,并将 webview 的高度设置为该值。

对于内容高度超过 200 的任何内容,这都可以正常工作,并且 View 可以缩放以完全适合页面而无需任何额外空间。但是当内容的高度低于 200 时,webview 似乎达到了某种高度,并且 webView.scrollView.contentSize.height 不会返回任何低于 200 的值。我还有很多的空白。

关于这个主题的帖子很多,但似乎没有一个涉及这个特定问题。当该值低于 200 时返回实际内容高度的最佳方法是什么?

编辑:这是一个 HTML 示例,它应该呈现得非常短,但最终高度为 200pt。

<meta name='viewport' content='width=device-width, user-scalable=yes'>
<html>
<head></head>
<body style='font-family:Helvetica neue; font-size:1.0em; color:#181818; -webkit-font-smoothing: antialiased;'><div>
Here's some example content.
<br/></div>
</body>

最佳答案

请确保您的 HTMLBODY 标签没有 min-height高度 css 样式。 然后,您应该使用 JavaScript 获取高度。要获取实际 高度,而不是可滚动 大小,这是某种未知的 UIWebView 决策。

所以 [[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.offsetHeight"] floatValue] 就可以了。

关于javascript - UIWebView 不正确的内容高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23943262/

相关文章:

javascript - Angular 2模拟Http get()返回本地json文件

javascript - Javascript/jQuery 中消失的变量内容

ios - 将 NSURLCredential forTrust 永久保存在钥匙串(keychain)中

ios - 添加没有自定义图像的 iOS 关闭按钮图标

ios - ios应用程序在iPad上运行,launchscreen.storyboard旋转屏幕问题

iphone - 如何在iPhone应用程序中隐藏UISearchBar

ios - 从 iOS 日历应用程序的 EKEventStore 中删除 EKEvent

ios - 如何在 ios 中点击按钮时实现日期选择器?

javascript - 帮助 JavaScript 替换

JavaScript时钟