如果页面不是被嵌在框架中的话,可以直接用window.onresize事实来实现页面大小变化的事件监听
然而如果页面被嵌在一个iframe或frameset中的话,就不一定了,这种情况我也碰到过
有人说要对frameElement的onresize事件进行监听然而现在情况却是非常不错,不管页面放在哪里,都能正确地通过window.onresize事件来监听页面大小变化
最近安装了IE8,升级了FireFox,看来这跟浏览器有关,问题是用户的浏览器不一定是最新的FireFox或IE8我的FF版本:3.0.9请教一下,谁可以帮我列出在FF和IE下,各种不同版本的情况下页面被嵌在iframe或frameset框架页中正确监听页面大小变化事件
然而如果页面被嵌在一个iframe或frameset中的话,就不一定了,这种情况我也碰到过
有人说要对frameElement的onresize事件进行监听然而现在情况却是非常不错,不管页面放在哪里,都能正确地通过window.onresize事件来监听页面大小变化
最近安装了IE8,升级了FireFox,看来这跟浏览器有关,问题是用户的浏览器不一定是最新的FireFox或IE8我的FF版本:3.0.9请教一下,谁可以帮我列出在FF和IE下,各种不同版本的情况下页面被嵌在iframe或frameset框架页中正确监听页面大小变化事件
//此函数功能:iframe的高度 根据src调用的页面高度而变化
function SetIheight(obj)
{
var win=obj;
if (document.getElementById)
{
if (win && !window.opera)
{
if (win.contentDocument && win.contentDocument.body.offsetHeight)
win.height = win.contentDocument.body.offsetHeight;
else if(win.Document && win.Document.body.scrollHeight)
win.height = win.Document.body.scrollHeight;
}
}
}<iframe id="main" name="main" onload="Javascript:SetIheight(this)" src="" frameborder="0" width="620px" height="700px" scrolling="no"></iframe>
什么操作使iframe的内容的尺寸在发生变化呢?
如果内容尺寸的变化是iframe里的页面更换造成的,即src发生了变化,那么我上面的onload代码本身可以模仿onresize的效果了
如果iframe的src没有变化,是内容页本身的效果。那么可以试试 把onresize的触发函数依然写在子页面里面,即window.onresize。而它触发后是去操作父页面的需求。