iframe 根据内容自适应高度-终极解决方案
要使iframe根据内容自适应高度,可使用以下终极解决方案:
var iframe = document.getElementById('myIframe');
var container = document.getElementById('iframeContainer');
// 在iframe加载完成后履行自适应高度的函数
iframe.onload = function() {
// 获得iframe中内容的高度
var height = iframe.contentWindow.document.body.scrollHeight;
// 设置iframe的高度
container.style.height = height + 'px';
};
这样,当iframe中的内容产生变化时,它的高度也会自动适应。
注意:上述解决方案假定iframe和父容器在同一个域名下,否则由于跨域限制,没法获得iframe中内容的高度。如果触及到跨域问题,可使用postMessage等方法来进行跨域通讯,然后在父容器中接收来自iframe的高度信息并进行设置。
TOP