当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > iframe高度自适应代码(兼容FF,Opera,Safari)

HTML/XHTML教程
IE 下的只读 innerHTML
IE8下noscript标记的BUG仍然存在
HTML 5 canvas 基本语法
HTML5教程(1):HTML5的Canvas概述
Canvas教程(2):基本用法
Canvas教程(3):Drawing shapes绘制图形
Canvas教程(4):Using images应用图像
W3C推荐的 DTDs(文件类型声明)
10个最经常犯得HTML标签错误
HTML5中会被丢弃的元素和尚待解决的问题
IE6下网页制作参考:IE6的默认样式
html5来了,你准备好了吗
20个使用水彩效果的网站设计
Xhtml下不常用却很有用的标签
input标签里面的name与value的区别
img图片标签赋予alt属性是否需要
HTML small标记使用技巧
WEB标准 网页页面结构
Marquee标记在XHTML代码中该如何用
自己碰上的IE8兼容笔记

HTML/XHTML教程 中的 iframe高度自适应代码(兼容FF,Opera,Safari)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-11   浏览: 155 ::
收藏到网摘: n/a

网上关于iframe高度自适应的代码有很多,但比较杂乱,有一些过于复杂,有一些存在明显错误。缘由心生给出了一段修改后的精简版本,感觉不错,简单修正了其中一处Opera下的错误,代码如下:

JavaScript部分:

<script type="text/javascript">
function SetCwinHeight(iframeObj){
if (document.getElementById){ 
  if (iframeObj){
    if (iframeObj.contentDocument && iframeObj.contentDocument.body.offsetHeight){
      iframeObj.height = iframeObj.contentDocument.body.offsetHeight;
      } else if (document.frames[iframeObj.name].document && document.frames[iframeObj.name].document.body.scrollHeight){  iframeObj.height = document.frames[iframeObj.name].document.body.scrollHeight;
      }
    }
  }
}
</script>

html部分:

<iframe name="frameContent" src="*" frameborder="0" width="100%" onload="SetCwinHeight(this)"></iframe>

标记*号的地方填入iframe页面的地址。需要注意的是,src地址必须是在同一网站下,否则会出现“权限被禁止”的错误。