0

我已经在我的网站 ( http://www.healthfitchiro.com/alternate-login ) 上安装了 iframe-resizer,它主要按预期工作,除了:1) 它似乎在任何容量的移动设备上都不起作用。2)当您单击 iframe 内的某个位置时,页面的长度会增加。每次点击都会使其进一步增长,并且不会收缩。这是我的页面代码:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript" src="//healthfitcorpwell.com/wp-content/themes/healthfitcorpwell/js/iframeResizer.min.js"></script>
<style>#lcembed{width:100%}</style>
<script type="text/javascript">
document.write('<iframe id="lcembed" name="lcembed" src="https://www.healthfitcorpwell.com/lce/?url=' + document.location + '" scrolling="no" frameborder="0"></iframe>');
iFrameResize({log:true, checkOrigin:false, inPageLinks:true, sizeWidth:true});
</script>

我的问题:为什么会出现这种增长现象?在移动设备上查看时,如何使其正常工作?由于我将在 iframe 内导航,我是否需要iframeResizer.contentWindow.min.js在将导航到的每个页面上包含或仅在加载的第一页上包含?另外,我想这并不重要,但是当我尝试使用 jQuery 方法时它不起作用:$('#lcembed').iFrameResize(); 它不会调整大小并且 iFrame 高度似乎只有几个像素高。只有iFrameResize();它自己才能发挥作用。为什么会这样?

4

1 回答 1

1

增长现象是由 iframe 高度和 iframe 的 body 高度之间的大小不匹配引起的。如果你min-height: 101%;从你的身体 css 中删除它,它就不会继续增长。

我无法重现移动故障,在 Android 上的 Chrome 中,它看起来与我的桌面浏览器相同。

如果您要导航到 iframe 中的其他页面,那么是的,您需要在每个页面中包含内容脚本。它必须调用父框架,如果没有脚本,这是不可能发生的。

于 2017-06-01T14:35:05.293 回答