我有一个iframe,显示我的网站内容的响应。我已将iframe宽度设置为100%
,因此iframe内的内容会对窗口的宽度做出反应。
我正在使用计时器不断更新iframe的高度,以便所有内容都适合。
问题在于,当窗口宽度减小时,iframe内部的内容的主体的高度增加,而当宽度增加时,内容的主体的高度不减小。最终,我最终在页面底部有一个巨大的空白区域。有没有办法自动重置iframe内部的正文内容的高度?
我的问题与How to auto shrink iframe height dynamically?
类似不幸的是,没有人回答,似乎没有一个解决方案适合我。
源代码 -
(function(document) {
var View = document.getElementById('view');
window.requestAnimationFrame = (function() {
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
function(callback) {
window.setTimeout(callback, 1000 / 60);
};
})();
var iframe = document.createElement('iframe');
iframe.src = "//link/to/my/website";
iframe.width = "100%";
iframe.id = "frame";
iframe.style.display = "none";
iframe.style.border = "none";
iframe.addEventListener('load', function() {
spinner.style.display = "none";
iframe.style.display = "block";
resize();
});
function resize() {
var newheight = iframe.contentWindow.document.body.scrollHeight;
iframe.style.height = newheight + "px";
requestAnimationFrame(resize);
}
View.appendChild(iframe);
})(document);