从iframe </iframe>中检测<iframe>高度和宽度

时间:2011-10-18 14:17:42

标签: javascript html iframe

我怀疑这实际上是可能的,但我准备好纠正。

我需要的是能够从iframe中检测iframe的宽度和高度,因此如果iframe srciframeContent.html,我需要能够在此显示值页。

我无法控制托管iframe的网页,只能控制iframe的内容。

这可能吗?

1 个答案:

答案 0 :(得分:12)

您始终可以获取网页尺寸,无论页面是在iframe内还是在新窗口中加载,它始终以相同的方式工作。这是我用来获取window尺寸的函数,您也可以使用它来获得<iframe>尺寸。

function alertSize() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
  window.alert( 'Width = ' + myWidth );
  window.alert( 'Height = ' + myHeight );
}