iOS-UIWebView 自适应网页图片

<html>
  <head></head>
  <body>
    <h1>Test Img howtoautofitwebview</h1>
    <imgsrc="http://pic.nipic.com/2007-12-15/2007121519169400_2.jpg"></img>
    <h2>Another image</h2>
    <imgsrc="http://www.zg2sc.cn/upfile/pic/2014/05/14/5f80fc3a258940998f921953269d1960141058011295091_163227633232_2.jpg"></img>
    <h2>Third image</h2>
    <imgsrc="http://www.jydoc.com/uploads/jydoc/p35501/20091292046379677801.jpg"></img>
  </body>
</html>


以上为网页中带有三张图片代码。这三张图片的宽度已经超过iPhone的屏幕宽度,那么我们怎么才能让网页的图片在iPhone中自适应呢。这时候,我们可以使用UIWebView控件加载网页,通过原生API改变网页的CSS,最后达到图片宽度自适应。具体代码如下:


- (void)webViewDidFinishLoad:(UIWebView *)webView {
  NSString *js = @"function imgAutoFit() { \
     var imgs = document.getElementsByTagName('img'); \
     for (var i = 0; i < imgs.length; ++i) {\
        var img = imgs[i];   \
        img.style.maxWidth = %f;   \
     } \
  }";
  js = [NSStringstringWithFormat:js, [UIScreen mainScreen].bounds.size.width - 20];
  
  [webViewstringByEvaluatingJavaScriptFromString:js];
  [webViewstringByEvaluatingJavaScriptFromString:@"imgAutoFit()"];
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值