繁体   English   中英

每次更改src时,调整iframe的大小以包装其内容

[英]Resize iframe to wrap it's content every time it changes it src

我设法通过以下代码调整iframe的大小以包装其内容:

var frameHeight = document.getElementById("fibertjekIframe").contentWindow.document.body.scrollHeight;
$(this).height(frameHeight);

并且在第一次加载页面时效果很好,但是在iframe中是一个表单,当用户提交表单时,他将被重定向到该iframe中的另一个页面。 我也希望该iframe也根据其内容调整大小。

我希望这可以工作:

// Auto resize of the Fibertjek Iframe
$("#fibertjekIframe").on("load", function () {
    var frameHeight = document.getElementById("fibertjekIframe").contentWindow.document.body.scrollHeight;
    $(this).height(frameHeight);
});

每当在iframe中加载新的src时,都会调用该函数,但是由于某种原因,我得到了iframe的旧高度,因此它保持不变。

编辑:我进行了一些调查,发现即使在提交表单后(在iframe中)和重定向之后,iframe的src属性也保持不变,因此我认为它仍然是指旧页面,即使它已被重定向。 如何克服这个问题的唯一想法是将iframe的源设置为表单提交后重定向到的页面,但这不是方便且正确的解决方案...

我建议使用可实现您想要的功能的iframe-resizer: https//github.com/davidjbradshaw/iframe-resizer

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM