rsk*_*k82 11 javascript iframe resize no-framework
主窗口和iframe都位于同一个域中,但我想要实现的是调整iframe以仅在iframe中使用js来调整其内容.
我也不知道主窗口分配给它的iframe的id.而且我不想使用jquery或任何其他框架.
Tee*_*emu 12
你可以这样做也是不知道id的iframe父窗口:
window.frameElement.style.width = iframeContentWidth + 'px';
window.frameElement.style.height = iframeContentHeight + 'px';
Run Code Online (Sandbox Code Playgroud)
见frameElement在MDN.
编辑
以防万一iframe恰好位于具有固定大小的容器元素中,overflow: hidden您可以执行以下操作:
function resizeIframe (iframeContentWidth, iframeContentHeight) {
var container = window.frameElement.parentElement;
if (container != parent.document.body) {
container.style.width = iframeContentWidth + 'px';
container.style.height = iframeContentHeight + 'px';
}
window.frameElement.style.width = iframeContentWidth + 'px';
window.frameElement.style.height = iframeContentHeight + 'px';
return;
}
Run Code Online (Sandbox Code Playgroud)