[英]How to get the height of the webpage that got loaded in UIWebView?
我使用了以下方法,但現在仍無法獲得正確的值:
[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"] floatValue]
[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"]
webView.scrollView.contentSize.height
我已經訪問了以上所有內容,
- (void)webViewDidFinishLoad:(UIWebView *)aWebView
{
}
你可以通過兩種方式
方法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);
方法2:
UIWebView *objWebView = [[UIWebView alloc] init];
for (UIScrollView *v in objWebView.subviews) {
if ([v isKindOfClass:[UIScrollView class]])
{
CGSize requiredSize = v.contentSize;
}
}
我認為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>
您可以使用以下方法獲取Webview的高度
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
float height = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"] floatValue];
}
用這個
let height = webView.scrollView.contetSize.height
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.