今天遇到的问题,iframe适配iPhone时会出现iframe的大小会变很大,完全看不成,我一搜索大部分都是这个问题。
这个是iframe部分
注意with和height都给100%
<iframe id="mainIframe" class="iframe" src="./home.html" name="mainIframe" width="100%" height="100%" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" frameborder="0" scrolling="no" >
</iframe>
js部分
var frame = document.getElementById('mainIframe')
frame.onload = function () {
var u = navigator.userAgent
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
if ( isiOS ) {
var iframebody = frame.contentWindow.document.body;
console.log(iframebody)
iframebody.style.width = document.body.clientWidth + 'px';
// alert('iphone')
}
}
先判断一下是不是ios系统,然后将body宽度给到iframe,这样就ok了。