ios webView加载html适应手机屏幕的问题

生姜可乐 发布于 2014/07/29 09:34
阅读 26K+
收藏 1
iOS

webView加载html,如图:

html文件被放大了,没有适应手机屏幕,调了js处理:

NSString *js_fit_code = [NSString stringWithFormat:@"var meta = document.createElement('meta');"
        "meta.name = 'viewport';"
        "meta.content = 'width=device-width, initial-scale=1.0,minimum-scale=0.1, maximum-scale=2.0, user-scalable=yes';"
        "document.getElementsByTagName('head')[0].appendChild(meta);"
                               ];
 [webView stringByEvaluatingJavaScriptFromString:js_fit_code];



不知道是不是js的属性的问题,求指教。

想要的效果是:webView加载html就自适应,如图:

加载中
0
findever
findever
光有meta头是不够的,图片、表格等等任意一个自定义宽或者自动宽的元素都可以把你的界面撑开,如果简单点处理,可以强制给img和table标签加max-width:100%处理,html标签加width:100%;overflow:hidden; 
杰伦中文网
回复 @生姜可乐 : 现在 有很多元素了,不仅仅是 table或者img怎么简单了。。求破。
生姜可乐
生姜可乐
谢谢~非常感谢。webServer服务端那边希望是在客户端处理,所以就尝试一下。
0
小右的夏至
小右的夏至
[webView setScalesPageToFit:YES];这样就Ok了
G
Gn乌云
给你个赞
生姜可乐
生姜可乐
这个webView的属性设置过了。
0
yinxin2745154
yinxin2745154
让服务器改,以后如果有问题,还要重新升级客户端,很麻烦的!
生姜可乐
生姜可乐
谢谢~
0
龙杭
龙杭
??解决了吗??
杰伦中文网
回复 @生姜可乐 : 怎么加的,能分享代码吗?
龙杭
龙杭
回复 @生姜可乐 : 是服务器直接改里面的一些参数吗
生姜可乐
生姜可乐
查了很多资料,最后发现,需要是html里面增加适配的代码。这个是我们服务端加的。
0
生姜可乐
生姜可乐

我在客户端做了一些调整,加了下面一段代码,但是最好还是在后台处理

NSString *js_fit_code = [NSString stringWithFormat:@"var meta = document.createElement('meta');"
        "meta.name = 'viewport';"
        "meta.content = 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=yes';"
        "document.getElementsByTagName('head')[0].appendChild(meta);"



0
晓篷子
iOS端webView setScalesPageToFit:YES完美解决。Android客户端注入js解决。
0
之一陆
之一陆
我也遇到了同样的问题,求指教,在线等
返回顶部
顶部