Iframe实现跨浏览器自适应高度解决方法
本文以实例形式讲述了Iframe实现跨浏览器自适应高度解决方法,非常具有实用价值。分享给大家供大家参考之用。具体方法如下:
该方法使用了jQuery,因此需要在iframe的src页面里面引入jQuery。
父页面里面相对简单一点,主要包含以下代码:
<iframeid="if1"scrolling="no"src="2.html"></iframe>
在iframe的src页面里面代码如下:
<scripttype="text/javascript"> functionresizeContent() { $(window.parent.document).find("#if1").height($("#content").height()); } functionshow400() { if($("#test400").css("display")=="none") { $("#test400").css("display",""); resizeContent(); } else { $("#test400").css("display","none"); resizeContent(); } } $(document).ready(function(){ resizeContent(); }) </script> <divid="left111"> <divclass="mnav"onclick="test400()"></div> <divclass="mnav"><ahref="ProductList.html">超级链接</a></div> <divclass="mnav"><ahref="ProductCategory.html">超级链接</a></div> <divclass="mnav"><ahref="ProductCategory.html">超级链接</a></div> <divid="test400"style="display:none;height:400px;"></div> <divclass="mnav"><ahref="Orders.html">超级链接</a></div> <divclass="mnavMcurrent"><ahref="Keywords.html">超级链接</a></div> <divclass="mnav"><ahref="#">超级链接</a></div> <divclass="mnav"><ahref="#">超级链接</a></div> <divclass="mnav"><ahref="#">超级链接</a></div> <divclass="mnav"><ahref="#">超级链接</a></div> <divclass="mnav"><ahref="#">超级链接</a></div> <divclass="mnav"><ahref="#">超级链接</a></div> <br/> </div>
注释:
这里面的
$(window.parent.document).find("#if1").height($("#content").height());
这句话最初是:
$(window.parent.document).find("#if1").height($(document).height());
可以实现自适应高度,但是不能实现缩放自适应。因为document的高度是展示内容出现过的最高高度,所以这里如果点击展开,iframe不会缩小,只会展示最高出现过的高度。
所以这里要用一个父层容器,也就是最新的代码。这样就可以实现自适应了。
相信本文所述对大家的jQuery程序设计有一定的借鉴价值。