Obtenir la hauteur totale du contenu de webView en utilisant Javascript

Je suis en utilisant un UIWebView pour l'affichage de contenu, sous la forme d'une chaîne HTML – pas un site web, supérieure à celle de l'écran de l'iPhone, sans avoir à faire défiler dans la webView lui-même, de laisser le parent scrollView.

Pour y parvenir, j'ai besoin d'un moyen pour obtenir le total de la taille du document, y compris la zone déroulante pour définir le webView de la hauteur. J'ai essayé un certain nombre de différents Javascript solutions:

(document.height !== undefined) ? document.height : document.body.offsetHeight //Returns height of UIWebView
document.body.offsetHeight //Returns zero
document.body.clientHeight //Returns zero
document.documentElement.clientHeight //Returns height of UIWebView
window.innerHeight //Returns height of UIWebView -2
document.body.scrollHeight //Returns zero

Est-il une solution qui fonctionne réellement?

Courant (chômé) code:

[[[self.singlePost.contentText subviews] lastObject] setScrollEnabled:NO];
int content_height = [[self.singlePost.contentText stringByEvaluatingJavaScriptFromString: @"document.body.offsetHeight"] intValue];
NSLog(@"Content_height: %d", content_height);
CGRect rect = self.singlePost.contentText.frame;
rect.size.height = content_height;
self.singlePost.contentText.frame = rect;

source d'informationauteur Emil