簡體   English   中英

stringByEvaluatingJavaScriptFromString識別WebView內容的高度

[英]stringByEvaluatingJavaScriptFromString recognize webview content height

我在UIscrollview中放置了一個Uiwebview,因為在uiwebview之后,我想使用PageController顯示一些圖像。

我正在使用這一行代碼。

   -(void)webViewDidFinishLoad:(UIWebView *)webView{
    if (webView!=WebView)return;
    float h;

    NSLog(@"web view is %f high", WebView.frame.size.height);
    NSString *heightString = [WebView stringByEvaluatingJavaScriptFromString:@"document.getElementById(\"body\").offsetHeight;"];
    NSLog(@"web content is %@ high",heightString);

    h = [heightString floatValue] +12.0f;   
    WebView.frame = CGRectMake(WebView.frame.origin.x, WebView.frame.origin.y, WebView.frame.size.width, h);

    h = WebView.frame.origin.y + h + 20; 
    [ScrollView setContentSize:CGSizeMake(320, h)];


}

但是, Web view is %f high無法正常工作,它無法協調WebView的高度,有人知道我可以解決此問題嗎? 這是因為我正在使用[WebView loadHTMLString:html baseURL:nil];

並且: NSString *heightString = [WebView stringByEvaluatingJavaScriptFromString:@"document.getElementById(\\"body\\").offsetHeight;"];

 NSString *html = [NSString stringWithFormat:@"<html><head><!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\"><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /><style>body {  font: normal 13px helvetica; color: #565656;   } </style></head><body><p>%@</p></body></html> ",text];  


[WebView loadHTMLString:html baseURL:nil];

嘗試

NSString *heightString = [Bericht stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"];

內森,祝你好運

UIWebView已經包含一個scrollView,為什么還要再次將其添加為子視圖。 在此處查看Apple的文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM