我有一个 UIWebview 我想更改字体大小。为此,我只需使用 javascript :
NSString *jsString = [NSString stringWithFormat:@"document.body.style.webkitTextSizeAdjust= '%d%%'",50];
[t_webview stringByEvaluatingJavaScriptFromString:jsString];
问题是当我将字体大小设置为 50% 时,uiwebview 的内容下方有一个很大的空白区域。
我试图通过运行以下 js 将我的 webview 调整为适合实际内容大小的高度,但它总是返回 100% 文本的高度,而不是 50% 和实际的高度:
NSLog(@"font size: %i%%",theHeightIWant);
NSString* t_height = [t_webview stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"];
NSLog(@"height before: %@",t_height);
NSString *jsString = [NSString stringWithFormat:@"document.body.style.webkitTextSizeAdjust= '%d%%'",theHeightIWant];
[t_webview stringByEvaluatingJavaScriptFromString:jsString];
t_height = [t_webview stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"];
NSLog(@"height after: %@",t_height);
---- 日志 ------
font size: 95%
height before: 932
height after: 932
font size: 90%
height before: 932
height after: 932
font size: 85%
height before: 932
height after: 932
我也尝试使用 document.documentElement.scrollHeight 而不是 document.body.offsetHeight 但这也不起作用。
谁能帮我?谢谢。
编辑:这是我将 html 加载到 webview 的方式:
NSString* t_html = [NSString stringWithFormat:@"<html><body>%@</body></html>",t_htmlPharmaco];
[webview loadHTMLString:t_html baseURL:[[NSBundle mainBundle] bundleURL]];