Javascript Iframe不会触发调整大小事件

Javascript Iframe不会触发调整大小事件,javascript,jquery,iframe,event-handling,resize,Javascript,Jquery,Iframe,Event Handling,Resize,经过3天的研究和反复试验,我无法获取iframe或其内容来触发调整大小事件,因此无法调用我的调整大小函数。如果我使用…触发器(“调整大小”);若要手动触发调整大小事件,将调用my resize函数并运行。加载到iframe中的页面位于同一域中(http://localhost:81/curlExample/)作为包含iframe的页面。最终,iframe中的页面将由php curl方法提供,但我想先让它工作 *******更新******** 如何在调整浏览器窗口大小时触发调整大小事件,从而导致

经过3天的研究和反复试验,我无法获取iframe或其内容来触发调整大小事件,因此无法调用我的调整大小函数。如果我使用…触发器(“调整大小”);若要手动触发调整大小事件,将调用my resize函数并运行。加载到iframe中的页面位于同一域中(
http://localhost:81/curlExample/
)作为包含iframe的页面。最终,iframe中的页面将由php curl方法提供,但我想先让它工作

*******更新******** 如何在调整浏览器窗口大小时触发调整大小事件,从而导致iframe调整其大小


谢谢你的帮助

使用iframe页面

$(文档).ready(函数(){
函数setResize()
{
window.alert(“你好”);
var iframeRef=document.getElementById('displayframe');
$(iframeRef).on(“resize”,function()){
var-xExp=0;
警告(“已触发调整事件大小”);
});
}
$('#displayframe').load(函数()
{
警报(“来自iFrame的Hello.Load事件已触发”);
var myStallTime=setTimeout(setResize,3000);
});
});
你好

您的浏览器不支持iFrame

元素不会触发调整大小事件,如
。您必须从
窗口
获取此事件。由于iframe文档与父文档来自同一来源,因此可以访问其
contentWindow
和任何其他属性

那么,试试这个:

var iframeWin = document.getElementById('displayframe').contentWindow;
$(iframeWin).on('resize', function(){ ... });
我只用了DOM的


嗯,你为什么不在当前窗口上收听“调整大小”节目?不太清楚什么是有效的或无效的,或者目标是什么,或者说,2年后,我们在浏览器中安装了resize Observer,您可以在一年后观察单个元素上的resize事件,resize Observer仍然只在一个浏览器上受支持,而不是100%多填充。从版本68 Safari v13开始,Firefox将支持此功能,和边缘v76。
var iframeWin = document.getElementById('displayframe').contentWindow;
iframeWin.addEventListener('resize', function(){ ... });