iframe在ios设备宽度不能100%

不知道大家是否有遇到过使用iframe嵌套其他域名的情况。 眼下我就遇到了一个项目,项目出于开发中,但是客户要求使用正式域名访问。 所以我们在正式服务器上放了一个页面使用iframe嵌套测试域名。 但是过程中遇到了一个问题iframe在ios设备宽度不能100%,只能显示一半,如下图:
这里写图片描述

但是在安卓手机上面访问是正常的。


历经千辛万苦,终于找到一丝眉目。 原来当”scrolling”设置为”yes”的时候ios根本就直接忽略了iframe设置的宽度和高度。

CSS部分:

.frame_holder{ width:100%; height:100%;}
.my_frame {
    width: 100%;
    height: 100%;
    border:0;
}

HTML部分:

<div class="frame_holder">
    <iframe class="my_frame" id="iframepage" src="http://m.wanhu.com.cn/"></iframe>
</div>

JS部分:

var dw = $(window).width(),
    dh = $(window).height(),
    ifmbox = $(".frame_holder"),
    iframe = $("#iframepage");

var cssText = "width:" + dw + "px !important;";
iframe.css("cssText",cssText);

if(navigator.userAgent.match(/(iPod|iPhone|iPad)/)){  //判断是苹果设备还是其他设备 
           ifmbox.addClass('ifm-ios');
           iframe.attr("scrolling","no"); //评估设置设置为no
      }else{
        iframe.attr("scrolling","yes")  //安卓设备设置为yes
        iframe.height(dh)
 }

案例项目:
http://www.wanhu.com.cn/shouji/ , 找到客户案例,所有手机站案例都可以

猜你喜欢

转载自blog.csdn.net/bigbear00007/article/details/80781014