窗口 - > IFRAME - > DIV
我有一个窗口,有一个iframe,有一个div。 div可以滚动内容,但不能完全控制父窗口,我必须决定div在iframe中的大小。
为此,我有以下代码JavaScript(请原谅jQuery /直接JavaScript的混合):
$(window.parent).resize(function () {
var frameHeight = parent.document.getElementById('IFRAME_banner').offsetHeight - 52;
$("div.ajax__tab_body").height(frameHeight);
});
只要您通过拖动其中一个角来调整窗口大小,此代码就可以正常工作。如果通过拖动窗口底部垂直调整大小,则不会触发此事件,并且div无法正确调整大小。
我使用iframe作为参考,因为它似乎是由于父窗口所做的事情而自动调整自身大小。 (这完全是在MS CRM Dyanamics中......所以谁知道幕后发生的事情)
有谁知道为什么会这样?我需要做些什么才能解决这个问题?
Hackish在这个例子中没问题。整件事情都很糟糕。
答案 0 :(得分:1)
黑客回答:您可以创建一个每秒钟左右触发一次的计时器并检查尺寸。如果它们不符合您的预期,请手动调用事件功能。
答案 1 :(得分:0)
resize事件在不同浏览器上的触发方式不同。 FF重复触发,IE仅在调整大小完成后才会触发。你不能指望它。使用计时器并轮询当前大小。