因为有一个项目要用到ifr a me自适应高度,网上搜索了以下结果无数,不过看来看去都是那几个,而且基本都测试了一遍,所说的兼容根本不是那么回事,要不IE不正常,要不其他浏览器显示不正常,最后无奈,综合网上的方法,写了一个最精简,但完全兼容五大浏览器的自适应高度的代码,我想应该是网上共享出来的独一份了,亲测,五大浏览器完美兼容。资源里附带js代码说明 测试环境window xp,所用浏览器版本为2012年2月为止都是最新的浏览器,其他老版本的浏览器自测。不过应该不会出现不兼容的问题,毕竟ie6
本文实例讲述了JS实现ifr a me自适应高度的方法。分享给大家供大家参考,具体如下:
之前一直被ifr a me自适应高度的问题困扰,很多JS代码在FF里面似乎就变成哑巴了。后来下面这段代码终于被我从万千号称兼容FF的代码堆中翻了出来。我已经用过了,真的好用。尤其是对于我这样的JS水平较低(真不好意思)的人来说,这段代码简单易懂,方便修改,只要把下面的代码复制粘贴到ifr a me所在页面的标签里面,并且修改一下ID名就行了(注意,要修改的地方有两个,位置在代码中有说明)。
向原创这段代码的
随之而来的就是在实际使用ifr a me中,会遇到ifr a me高度的问题,由于被嵌套的页面长度不固定而显示出来的滚动条,不仅影响美观,还会对用 户操作带来不便。于是自动调整ifr a me的高度就成为本文的重点。 采用Javascr ipt来控制ifr a me元素的高度是ifr a me高度自适应的关键,同时由于Javascr ipt对不同域名下权限的控制,引 发出同域、跨域两种情况。 同域时ifr a me高度自适应 下面的代码兼容IE/Firefox浏览器,控制id为“ifr a me
找到了下面这个js 代码如下: function SetCwinHeight(obj) { var cwin=obj; if (document.getElementById) { if (cwin && !window.opera) { if (cwin.contentDocument && cwin.contentDocument.body.offsetHeight) cwin.height = cwin.contentDocument.body.offsetHeight + 20; el
代码如下: [removed] function reinitifr a me(){ var ifr a me = document.getElementById(“mainFrame”); try{ var bHeight = ifr a me.contentWindow.document.body.scrollHeight; var dHeight = ifr a me.contentWindow.document.documentElement.scrollHeight; var heig