iOS-WKWebView 加载HTML字符自适应文字和图片
加载HTML字符串内容时,字体自适应屏幕问题处理,在创建 WKWebView 时,注入相关的js:WKWebViewConfiguration *wkWebConfig = [ init];
NSString *jSString = @"var meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=device-width'); document.getElementsByTagName('head').appendChild(meta);";
WKUserScript *script = [ initWithSource:jSString injectionTime:WKUserScriptInjectionTimeAtDocumentEnd forMainFrameOnly:YES];对于图片处理,只需要给图片一个最大的宽度,也就是屏幕宽度或相对最大宽度,让图片自适应,超过最大宽度,让图片宽度等于最大宽度,其余的情况不做处理,图片高度自适应
NSString *htmlString = [NSString stringWithFormat:@"<html> \n"
"<head> \n"
"<style type=\"text/css\"> \n"
"body {font-size:15px;}\n"
"</style> \n"
"</head> \n"
"<body>"
"<script type='text/javascript'>"
"window.onload = function(){\n"
"var $img = document.getElementsByTagName('img');\n"
"var maxWidth = %f;\n"
"for(var k in$img){\n"
"if($img.width> maxWidth){\n"
" $img.style.width = maxWidth;\n"
"}\n"
"$img.style.height ='auto'\n"
"}\n"
"}"
"</script>%@"
"</body>"
"</html>", _maxWidth,string];
;
文档来源:网络转载 https://www.cnblogs.com/wangkejia/p/15199542.html
页:
[1]