【问题标题】:How to get the height of the webpage that got loaded in UIWebView?如何获取在 UIWebView 中加载的网页的高度?
【发布时间】:2013-02-19 14:45:02
【问题描述】:

我使用了以下方法,但现在仍然没有得到正确的值:

[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"] floatValue]

[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"]

webView.scrollView.contentSize.height

我已经访问了以上所有内容,

- (void)webViewDidFinishLoad:(UIWebView *)aWebView 
{

}

【问题讨论】:

标签: ios uiwebview height


【解决方案1】:

我认为webView.scrollView.contentSize 是在加载 HTML 时由 webView 本身自动设置的。你有没有像这样尝试过:

- (void)webViewDidFinishLoad:(UIWebView *)webView {
     float h = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"] floatValue];

    // h is the height of the loaded webpage...

}

别忘了设置 webView 的代理 YourViewController: UIViewController <UIWebViewDelegate>

【讨论】:

  • 完全添加了您上面提到的相同的东西,但不起作用。
【解决方案2】:

你可以通过两种方式获得它

方法1:像这样加载你的html

embedHTML = [embedHTML stringByAppendingFormat:
               @"<body><div id='size_div'>%@</div></body></html>",yourString];

现在在 webViewDidFinishLoad 方法中保留此语句...

NSString *output = [webView stringByEvaluatingJavaScriptFromString:
                      @"document.getElementById(\"size_div\").offsetHeight;"];  
NSLog(@"height: %@", output);

方法二:

UIWebView *objWebView = [[UIWebView alloc] init];
for (UIScrollView *v in objWebView.subviews) {
    if ([v isKindOfClass:[UIScrollView class]])
    {
        CGSize requiredSize = v.contentSize;
    }
}

【讨论】:

  • 方法 1 工作正常 - 在这也有一些截断是他们手动添加常量 20 以获得正确的高度,但方法 2 不工作是它想要为方法 2 做任何额外的事情
  • 你在哪里添加了method2?
  • 在 webViewDidFinishLoad 方法中。
【解决方案3】:

您可以通过使用获取 webview 高度

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    float height = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"] floatValue];
}

【讨论】:

    【解决方案4】:

    使用这个

    let height = webView.scrollView.contetSize.height
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-18
      • 1970-01-01
      • 2011-05-21
      • 1970-01-01
      相关资源
      最近更新 更多